CSS中常用的选择器的用法和说明
实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>CSS中常用的选择器</title> </head> <style type="text/css"> *{ padding: 0px; margin: 0px; } ul{ width: 750px; padding: 100px 5px; } ul:after { /*子块撑开父块*/ content:''; /*在子元素尾部添加空内容元素*/ display: block; /*并设置为块级显示*/ clear:both; /*清除二边的浮动*/ } ul li{ width: 50px; height: 50px; line-height: 50px; list-style: none; color:#fff; float: left; background: #666666; box-shadow: 2px 3px 6px #888; border-radius: 6px; margin-right: 10px; text-align: center; } /*常用选择器部分开始*/ /*id选择器*/ #num_list{ background-color: #b181ff; } /*类选择器*/ /*属性选择器: 属性名*/ ul li[class] { background-color: blueviolet; } /*属性选择器: 属性值*/ ul li[class="num_a"] { background-color: #804151; } /*属性选择器: 以指定属性值开头*/ ul li[class^="num_a"] { background-color: #4a36a5; } /*属性选择器: 以指定属性值结束*/ ul li[class$="num_c"] { background-color: red; } /*属性选择器: 属性值中包含指定子串*/ ul li[class*="num"] { /*第1,2小球会变色,思考为什么1球没变色?*/ /*第1个小球是id,它的优先级大于标签属性选择器,改成class就会有效果*/ background-color: green; } /*后代选择器*/ body ul li { border: 1px solid black; } /*子选择器*/ ul > li[class$="num_a"] { background-color: greenyellow; } /*相邻选择器*/ ul li[class$="num_a"] ~ * { /*选择当前元素之后的所有同级元素(不含当前)*/ background-color: black; color: white; } /*相邻兄弟选择器*/ ul li[class$="num_a"] + li { background-color: pink; color: black; } /*群组选择器*/ h1, p { font-size: 2rem; font-weight: lighter; margin: 0; } /*伪类选择器: 链接*/ a { font-size: 2rem; } /*访问前*/ a:link { color:red; } /*访问后*/ a:visited { color: orange; } /*获取焦点时*/ a:focus { color: purple; } /*鼠标悬停时*/ a:hover { color: green; } /*鼠标点击时*/ a:active { color: blue; } /*伪类选择器: 位置*/ /*选择集合中的第一个元素*/ ul li:first-child { background-color: #efefef; background-color: #efefef!important; } /*选择集合中的最后一个子元素*/ ul li:last-child { background-color: red; } /*按索引选择指定的元素,注意从1开始计数*/ ul li:nth-child(5) { background-color: red; } /* 选择所有的偶数小球变色 */ /* 2n偶数, even偶数, 2n+1奇数, odd奇数*/ ul li:nth-child(even) { background-color: purple!important; } /*伪类选择器: 根据子元素数量*/ /*选择具有唯一子元素的元素*/ ol:only-child { background-color: lawngreen; } /* 选择指定类型的唯一子元素 */ ol li:only-of-type { background-color: lawngreen; } /* 倒数选择指定位置的元素 */ ul li:nth-last-child(3) { /*将倒数第3个小球变色,实际上第8号球*/ background-color: wheat!important; } /*选择指定父级的第二个<li>子元素*/ ol li:nth-of-type(2) { background-color: wheat; } /*选择页面中内容为空的元素*/ :empty { width: 220px; height: 271px; background-color: coral; } :empty:after { content: '输出内容'; } :empty:before { /*默认插入的元素为行内元素,不支持宽度设定,如果一定要设置可以通过背景图片实现*/ content: url("http://www.php.cn/static/images/logo.png"); } .item2 { background-color: gold; } </style> <body> <ul id="num_list"> <li class="num_a">01</li> <li class="num_b">02</li> <li class="num_a num_b num_c">03</li> <li>04</li> <li>05</li> <li>06</li> <li>07</li> <li>08</li> <li>09</li> <li>10</li> </ul> <h1>css选择器大法</h1> <p>css选择器非常重要,对于后面的jquery学习至关重要</p> <a href="http://php.cn">PHP中文网</a> <ol> <li>列表项1</li> <!-- 现在给ol再添加一个子元素<p>,有二个子元素了,所以子元素不再唯一, 如何才能选中唯一的li元素呢?only-of-type --> <p>我是一个段落</p> </ol> <ol> <li>列表项1</li> <li>列表项2</li> <li>列表项3</li> </ol> <ol> <li>列表项1</li> <li>列表项2</li> <li>列表项3</li> <li>列表项4</li> </ol> <!--空区块--> <div></div> </body> </html>
运行实例 »
点击 "运行实例" 按钮查看在线实例