css判断某元素的子元素个数并分别设置样式的方
建站知识 2021-07-03 08:16www.168986.cn长沙网站建设
工作时遇到这样一个问题:根据某元素所包含的子元素个数,分别设置不同的样式,这个用js可以解决,不过个人认为用css解决可能更简单一点。这也正好加深了我对css选择器的理解和运用。
demo如下
效果图如下
完整代码如下
<!DOCTYPE html> <html> <head> <title>css3</title> <style type="text/css"> { box-sizing:border-box; } ul{ width:100%; margin:0; padding:0; font-size: 0; } li{ margin:0; padding:0; display:inline-block; vertical-align: ; font-size: 13px; border:1px solid red; height:30px; } /ul只有一个子元素的样式/ li:nth-last-child(1):first-child{ width:100%; } /ul有2个子元素的样式/ /li:nth-last-child(2):first-child, 是倒数第二个元素,又是第一个元素,说明li的父元素ul有2个子元素(起到了 判断某父元素下有几个子元素 的作用)/ li:nth-last-child(2):first-child, / ~ 选择位于li:nth-last-child(2):first-child 即 第一个子元素之后的元素/ li:nth-last-child(2):first-child ~ li{ width:calc(100% / 2); } /ul有3个子元素的样式/ /第一个元素宽度为1/3,字体颜色为蓝色/ li:nth-last-child(3):first-child{ width:calc(100% / 3); color:blue; } /第一个元素之后的第一个元素(即 有3个子元素的ul 的 第 3 个元素)/ li:nth-last-child(3):first-child ~ li:nth-last-child(1){ width:calc(100% / 4); color:red; } /第一个元素之后的第一个元素(即 有3个子元素的ul 的 第 2 个元素)/ li:nth-last-child(3):first-child ~ li:nth-last-child(2){ width:calc(100% / 6); color:yellow; } </style> </head> <body> <ul class="list"> <li>11111</li> </ul> <ul class="list"> <li>11111</li> <li>22222</li> </ul> <ul class="list"> <li>11111</li> <li>22222</li> <li>33333</li> </ul> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
上一篇:CSS 埋点统计的示例代码
下一篇:CSS属性之定位属性(图文详解)
长沙网站设计
- 如何进行东阳SEO关键词优化?
- 边坝哪有关键词排名优化:提升你的网站流量与
- 安国百度优化服务:提升您的在线可见性
- 阜康新手做SEO怎么做
- 山西seo网站排名关键词优化:提升您网站曝光率
- 临沂seo网站排名关键词优化:提高你的网站可见
- 广西SEO网站推广怎样付费比较合理
- 双辽SEO网站推广:提升你的网站可见性与流量
- 辽宁企业网站优化购买方式有哪些
- 提升宝清百度SEO排名的实用技巧与策略
- 静宁百度SEO排名:提升您网站曝光率的关键策略
- 彭州百度SEO排名的提升策略和实施指南
- 广南百度关键词SEO:提升网站排名的关键策略
- 辽宁关键词优化怎么做论坛营销
- 吉林百度seo排名如何做到让用户满意
- 内黄百度优化服务:提升在线可见性的关键