CSS中能通过子元素选父元素吗,怎么做
Admin 2022-05-24 群英技术资讯 2919 次浏览
通常一个CSS选择器都是从上往下选择的,通过父元素选择子元素,那么能不能通过子元素选择父元素呢?
<ul> <li> <a href="#" class="active">1</a> </li> <li> <a href="#">2</a> </li> </ul>
如果我想选择包含 a.active 的 li 该怎么实现呢? 目前我们学到的CSS好像是没有办法的,不过今天要将的一个CSS伪类 :has() 就有这个功能,虽然还处于草案阶段,但是还是可以提前了解一下。
li:has(> a.active){ color:red; }
除了表示包含,:has 还可以表示兄弟跟随关系
div:has(+ p){ color:red; }
表示选择 <div> 标签,前提是这个div标签必须是被一个<p>紧跟着的。此外还可以与:not 一起使用
article:not(:has(a)){ color:red; }
表示不包含 <a> 的 <article>标签。注意这里 :not 和 :has 的先后顺序,不同顺序代表不同的意思
article:has(:not(a)){ color:red; }
表示包含非 <a> 的 <article>标签
其实我们前面讲过的 :focus-within 也是一个通过子元素选择父元素的伪类,只不过条件只能是子元素是否获取焦点, 而 :has 则更灵活和强大。
form:focus-within{ background-color:black; }
如果通过 :has 实现的话, 可以这样写
form:has(:focus){ background-color:black; }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了详解如何使用CSS3中的结构伪类选择器和伪元素选择器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了HTML+CSS+JS模仿win10亮度调节效果的示例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
关于图片垂直居中显示,想必很多写css的人都研究过、或者说是搜寻过方法,下面这篇文章就给大家介绍关于图片与文字垂直方向不对齐问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
这篇文章主要给大家分享CSS样式冲突的解决方法的内容,本文给大家介绍了几种技巧,还有示例供大家参考,感兴趣的朋友可以参考看看,接下来就跟随小编来学习吧。
常常看到一种酷炫的效果,鼠标hover一片区域后,区域显示出虚线边框,并且还有线条动画,那么这种效果具体是怎么实现的呢,本文提供了几种思路,感兴趣的朋友跟随小编一起看看吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008