我可能回答了我自己的问题,但我非常好奇.
我知道CSS可以选择父项的单个子项,但如果其父项具有一定数量的子项,则可以支持对容器的子项进行样式化.
例如
container:children(8) .child {
//style the children this way if there are 8 children
}
Run Code Online (Sandbox Code Playgroud)
我知道这听起来很奇怪,但是我的经理让我检查一下,没有找到任何东西,所以我决定在结束搜索之前转向SO.
我正在努力整理一个液体样式表,它很棒.我注意到的一件事是Chrome浏览器中的浏览器窗口不会调整到400px以下它只会卡在那里而在FF中我缩小它只是停在400px左右然后弹出一个水平滚动条.
当我在手机上打开网站时,它看起来很完美,大约是320px,所以我知道它的比例低于400px.
我很好奇,如果有人知道这是一个浏览器/桌面的东西,还是我应该看看我的CSS以外的东西.我没有任何最小宽度声明,所以我不确定是什么原因引起的.
再次在桌面上,它缩小到约400px的最小宽度并停止,但是当我在手机上打开它时,它会扩展到手机屏幕的大小,大约是320px ...好奇为什么至少它赢了在桌面上缩小到320像素.
-edit-而且我不确定这是否重要但Opera允许它缩小到几乎没有...所以它适用于Opera而不是Chrome或FF ...任何想法?
你可能会看到很多这个问题.但是,我已经通过线程,我似乎无法找到解决我的情况.这可能是我失踪的一小部分,或者也许我只是在一起吠叫错误的树.
基本上我要做的是使用{display:block;}来设置一个具有设置高度和宽度的锚点,并使其文本垂直和水平居中.
现在这是我的CSS
.logo
{
width:140px;
height:75px;
border-right:1px dotted black;
border-bottom:1px dotted black;
float:left;
text-align:center;
font-size:15px;
font-weight:bold;
color:#c60606;
}
.logo a
{
display:block;
width:140px;
height:75px;
background-color:#fff;
font-size:15px;
font-weight:bold;
color:#c60606;
}
/*the reason for the double declaration of text information is because
some of the logo divs do not have anchors in them, and it's for uniformity
purposes.
*/
.logo a div
{
margin-top:10px;
}
Run Code Online (Sandbox Code Playgroud)
那么html就是
<div class="logo"><a href="#"><div>my link</div></a></div>
Run Code Online (Sandbox Code Playgroud)
现在我在锚点内部插入div的原因是因为我认为将文本与实际块分开是一种好方法,但是使用该边距设置会将锚点向下移动而不仅仅是文本.vertical-align属性基本上没有任何作用,我在做什么方面感到茫然.任何建议或重组想法都会很棒.谢谢.
可以在http://www.dsi-usa.com/test/clientele.php上找到一个样本,随意浏览网站,它仍然是一项正在进行的工作,必须对其进行大量组织和重新编码.无论如何,该样本正是我想要的,只需要文本垂直对齐.
我很好奇是否有一个事件监听器或者一种方法来构造一个在CSS发生变化时会触发的方法?
我的样式表使用媒体查询,我想知道是否有一种方法可以附加一个监听器,以查看这些媒体查询何时启动和退出.例如,我有一个媒体查询,隐藏某个屏幕宽度的按钮
@media screen and (max-width: 480px) {
#search-button {
display: none;
}
}
Run Code Online (Sandbox Code Playgroud)
我将使用什么事件监听器来检测该显示何时发生变化?我现在正在这样做:
$(window).resize(function() {
if($('#search-button').css("display") == "none") {
//do something
} else {
//do something else
}
});
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,但每次用户更改屏幕时都会调用监听器,而我只是在按钮的css发生变化时才激活它.我希望这是有道理的.
例如,这就是我想要的
$('#search-button').cssEventListenerOfSomeKind(function() {
alert('the display changed');
});
Run Code Online (Sandbox Code Playgroud) 我在这里发了一个帖子:
但是,我遇到了一个关于文件上传的表单处理的新事件,如果有人遇到这个问题,我很好奇.
我最初的问题是我无法使用onchange事件工作,我想也许这是我的javascript问题,但我发现它与表单被激活的方式有关.
我有一个文件输入
<input type="file" name="abc"/>
Run Code Online (Sandbox Code Playgroud)
现在我做了两件事.
我隐藏了输入并创建了一个按钮(用于更好的样式控制)来激活输入.
<button id="mybutton">click to upload a pic</button>
<input type="file" name="abc"/>
Run Code Online (Sandbox Code Playgroud)
然后JS为两者之间的互动:
$("#mybutton").click(function() {
$("Input[type=file]").click()
};
Run Code Online (Sandbox Code Playgroud)
当然是表单的提交(我在本例中使用了parent,但是在我的实际代码中,我使用了表单id).
$("input[type=file]").change(function() {
$(this).parent().submit();
});
Run Code Online (Sandbox Code Playgroud)
当我点击"mybutton"时,预期结果确实发生,我的浏览窗口打开,让我从我的电脑中选择一个文件.此外,当我在IE以外的所有浏览器中更改文件时,会触发onchange事件.现在,如果我取消隐藏表单并手动单击"浏览"按钮并选择一个文件,则会触发onchange事件.所以基本上浏览器会点击实际文件按钮而不是执行$("input [type = file]").click()
有人知道怎么修这个东西吗?
我认为这可能是重复的,但我找不到我当前问题的直接答案.
我正在尝试让我的macosx git autocomplete工作类似于我工作中的linux盒子上的git autocomplete.我发现了一些指示,导致我安装https://github.com/git/git/tree/master/contrib/completion(我使用的是.bash版本).一切都很好,唯一的问题是现在自动完成显示已删除的分支.
有没有人有一个替代脚本/方法,甚至只是如何编辑当前脚本以避免显示我的所有分支,以及只有当前可用的本地分支.
谢谢你,布罗迪
[编辑]
我想了一个例子,以帮助使问题更清楚.
#result of git branch is as expected
$ git branch
*master
somefeature
someotherfeature
#now I delete one of my feature branches
$ git branch -D someotherfeature
$ git branch
*master
somefeature
#the branch someotherfeature is gone, as expected
#however when I attempt an autocomplete, like with git checkout, I get everything remote branches, local branches, and previously deeted branches.
$ git checkout <tab><tab>
master somefeature someotherfeature remote/origin/master remote/origin/remotebranch
Run Code Online (Sandbox Code Playgroud)
我想让它只显示我的本地分支,就像它在我的linux盒子上一样 …
我正在使用cq5.5中的自定义表单处理程序,一切都很顺利.我现在正在努力锁定一些安全性,我的一个任务是实现对表单处理程序路径的请求限制过滤器.
目前我有类似的东西
@Component(immediate = true, metatype = true)
@Service(javax.servlet.Filter.class)
@Properties({
@Property(name="service.pid", value="com.xxxxxx.cq.core.filter.FormFilter",propertyPrivate=false),
@Property(name="service.description",value="FormFilter", propertyPrivate=false),
@Property(name="service.vendor",value="xxxxxx - Microsites", propertyPrivate=false),
@Property(name = "filter.scope", value = "request"),
@Property(name = "sling.filter.scope", value = "request"),
@Property(name = "service.ranking", intValue = 100001)
})
public class FormFilter implements javax.servlet.Filter {
private Logger LOGGER = LoggerFactory.getLogger(TrackingFilter.class.getName());
private static final Object lock = new Object();
@Override
public void doFilter(ServletRequest pRequest, ServletResponse pResponse, FilterChain pChain) throws IOException, ServletException {
//my filter stuff
}
}
Run Code Online (Sandbox Code Playgroud)
这工作正常,但我想将其锁定为仅在特定路径上运行.
感谢任何见解.
----编辑-----在做了更多研究之后,我发现了一些帖子,说明没有办法将过滤器注册到默认ServletFilter处理程序的指定路径.基本上我发现的这个问题的两个解决方案是为过滤器创建一个新的OSGI包并使用ExtHTTPService或Whiteboard注册它:
http://felix.apache.org/documentation/subprojects/apache-felix-http-service.html
要么
过滤掉过滤器内的网址.所以基本上在我的过滤器中添加对指定路径的检查. …
我很好奇是否有人知道如何使用已经包含默认组件的parsys加载.
我想要完成的是以下内容:
Form Component
- form-parsys
- input component
- input component
Run Code Online (Sandbox Code Playgroud)
在大多数情况下,这是非常直接的.我创建了一个"表单"组件,其中包含一个parsys.我希望这个表单组件加载一些已经设置的默认输入组件.这些输入组件需要是form-parsys节点的一部分,以便可以在用户添加的输入组件之间重新组织它们.
不确定是否有任何文件,因为我找不到任何文件,但我确定这并非完全不可能,并且想要看看之前是否有人做过这样的事情,然后才开始进行攻击.
谢谢布罗迪
我还在学习很多关于PHP的知识,字符串更改是我感兴趣的东西.我之前使用过preg_match来验证电子邮件地址或只搜索查询.
我刚从这篇文章中发表我的正则表达式有什么问题?并且好奇为什么preg_match_all函数产生2个字符串,1 w /一些字符被剥离,然后另一个带有所需的输出.
根据我对该函数的理解,它使用RegEx来逐字符串地逐字符号来评估如何处理它.这个RegEx的结构是否可以绕过第一个数组条目并产生所需的结果?
所以你不必去另一个线程
$str = 'text^name1^Jony~text^secondname1^Smith~text^email1^example-
free@wpdevelop.com~';
preg_match_all('/\^([^^]*?)\~/', $str, $newStr);
for($i=0;$i<count($newStr[0]);$i++)
{
echo $newStr[0][$i].'<br>';
}
echo '<br><br><br>';
for($i=0;$i<count($newStr[1]);$i++)
{
echo $newStr[1][$i].'<br>';
}
Run Code Online (Sandbox Code Playgroud)
这将输出
^乔尼斯〜
^史密斯〜
^example-free@wpdevelop.com~
强尼
·史密斯
example-free@wpdevelop.com
我很好奇,如果2个数组条目的原因是由于字符串的原始sytax或者它是函数的正常处理响应.对不起,如果这不应该在这里,但我真的很好奇这是如何工作的.
谢谢,布罗迪
作为参考,我在CQ5.5上
我很好奇是否有任何方法可以扩展继承的对话框,而不会覆盖它的父对话框.
例如,具有如下结构:
base-page-template
- dialog
- title
- description
inerited-from-base-page
- dialog
- custom field
--------------- [inherited from parent]
- title
- description
Run Code Online (Sandbox Code Playgroud)
我试图避免的是例如:我需要向基页添加一个新属性,该属性应显示在从基页扩展的所有页面模板上.我目前的解决方案是将该属性分别添加到所有对话框.因此,例如,在上面的结构中,我将不得不在基页和从基页继承的对话框中添加新的"默认属性".
我能想到的唯一另一个选择是创建一个代表"基页"的面板节点,然后包含带有xtype:cqinclude节点的面板.
在采用后一种方式之前,我很好奇是否有人以我上面描述的方式扩展了对话框.
非常感谢任何帮助,谢谢Brodie