我有能够反映不同的状态的元件,或者由用户(触发:hover,:focus等)或由服务器操作(data-status="finished",disabled等).
我可以定位具有已更改状态的元素,但我似乎找不到基于所讨论元素的状态来定位DOM中的其他元素的方法.
例:
<section>
<div>Element 1</div>
<div data-status="finished">Element 2</div>
<div>Element 3</div>
</section>
<section>
<div>Element 4</div>
<div class="blink">Element 5</div>
<div>Element 4</div>
<div>Element 4</div>
<div class="spin">Element 4</div>
...
</section>
Run Code Online (Sandbox Code Playgroud)
或者只是使用服务器端的正确样式呈现元素.
是否有一个CSS选择器可以让我根据目标元素的状态指定应该选择哪些元素?
就像是:
div[data-status~=finished]:affect(.blink, .spin)
Run Code Online (Sandbox Code Playgroud)
这将允许我也只针对 CSS 没有相同父级的元素?
是否有可能在CSS中选择具有某个类,id等祖先的多个元素?例如:
table.exams caption, tbody, tfoot, thead, tr, th, td
Run Code Online (Sandbox Code Playgroud)
如果没有,有没有办法选择该元素的所有后代?
我正在研究一个jQuery主题,其中包括尽可能多的表单元素的样式.最初它是为Webkit(Chrome)开发的.现在我想让它也适用于Firefox.
问题是; Firefox在某些特定于Webkit的语法方面存在问题.
例如:
input[type="range"]::-webkit-slider-thumb,
input[type=radio],
input[type=checkbox] {
-webkit-appearance: none !important;
-moz-appearance: none;
width: 1.2em;
height: 1.2em;
border: 1px solid black;
background: #666666 url(images/ui-bg_highlight-soft_50_666666_1x100.png) 50% 50% repeat-x;
}
Run Code Online (Sandbox Code Playgroud)
问题是input[type="range"]::-webkit-slider-thumb,有点.删除它,Firefox工作正常.它也可以用于其他语法::-webkit-file-upload-button,::selection以及使用::-webkit-...标签的所有其他内容.它识别它自己的::-moz-...标签,::-moz-selection虽然很好.
Webkit似乎只是忽略了::-moz-标签.
是否有任何方便的方法使Firefox忽略::-webkit-...标签或以其他方式处理此问题而无需维护每个CSS块的多个副本?
使用最新版本的Chrome和Firefox.
如果我有十几个CSS选择器,并希望:hover为所有这些选择器分配属性,我习惯这样做:
selector, selector2, someOtherSelector, someSelector div {
//some properties
}
selector:hover, selector2:hover, someOtherSelector:hover, someSelector div:hover {
//some properties
}
Run Code Online (Sandbox Code Playgroud)
打字:hover四次似乎是多余的.有没有办法将选择器分组
(selector, selector2, someOtherSelector, someSelector div):hover {
//some properties
}
Run Code Online (Sandbox Code Playgroud)
代替?
我阅读本教程使用CSS选择器使用正则表达式,并试图推断:是否有CSS速记来执行以下操作?我想选择具有"foo"类的所有div,它们具有附加类"a","b","c"或"d".
.foo.a,
.foo.b,
.foo.c,
.foo.d {
/* stuff */
}
Run Code Online (Sandbox Code Playgroud)
就像是:
.foo[class~='a','b','c','d'] {} ?
我想知道如果link1,2,3类在#cont id中,那么格式化CSS样式是否正确?
#cont .link1, .link2, .link3
Run Code Online (Sandbox Code Playgroud)
谢谢