可以通过 CSS 选择器,根据 .class 来定位和控制对应的 div 标签吗?

2017-11-17 12:20:04 +08:00
 miniyao

有 2 个 div,.class 都是 checkbox,目的是要隐藏( display:none )第 1 个 div。
如果不用 js 选择 document.getElementsByClassName('checkbox')[0]来定位这个 div,只用 CSS 选择器,可以定位和控制第 1 个 div 吗?

另外,CSS 选择器通过 id,如 input#id1 只能定位子标签( first-child ),没法逆向查父标签?

<div class="checkbox">
      <label>
        <input id="id1" name="order" value="y" type="checkbox"> 订单顺序
      </label>
</div>

<div class="checkbox">
      <label>
        <input id="id2" name="times" value="y" type="checkbox"> 显示次数
      </label>
</div>
4254 次点击
所在节点    CSS
23 条回复
SilentDepth
2017-11-17 14:25:13 +08:00
@otakustay #19 嗯,从「由子元素匹配父元素」这个层面上说,:empty 确实是「逆向」的 XD
sensui7
2017-11-17 23:26:23 +08:00
允许逆向查找可能会导致循环依赖, 比如子元素 B 的样式继承 A, 而 A 的样式又是通过 B 指定的, 这跟元素的 margin 和 padding 的百分比值是相对父元素的宽度一样, 都是为了防止循环依赖.
nciyuan
2017-11-18 18:17:03 +08:00
@miniyao 所以说你很牛逼咯

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/407194

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX