CSS3高级选择器

CSS3中添加了一些新的选择器 与之前的不同 这些选择器有些类似于jquery的选择器 能够让我们更高的操作DOM 废话不多说

为了更直观的了解 我们以这段为实例 来进行操作

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Title</title>
 6 </head>
 7 <body>
 8     <ul>
 9         <li>第一个测试标题</li>
10         <li>第二个测试标题</li>
11         <li>第三个测试标题</li>
12         <li>第四个测试标题</li>
13         <li>第五个测试标题</li>
14     </ul>
15 </body>
16 </html>

:nth-of-type(n)  选择属于其父元素第n个元素的每个元素。

和这个类似的是 :first-of-type和:last-of-type 分别是选择第一个元素和最后一个元素

DEMO:

<style>
        li:nth-of-type(3){   /*选择第3个li元素*/
            background-color: #00b3ee;
        }
        li:first-of-type{   /*选择第一个li元素*/
            background-color: #ee1200;
        }
        li:last-of-type{    /*选择最后一个li元素*/
            background-color: #00ee0f;
        }</style>

:before 在元素内容前面添加内容

:after 在元素内容后面添加内容

这两个元素类似于:hover 但是他们不是鼠标悬浮 而是利用content属性添加内容

需要注意的是 用css添加的内容不能被选中 也不能被js获取 显示成 这些内容属于css样式类型的

DEMO:

        li:before{
            content: ‘在前面添加内容 ‘;
        }
        li:after{
            content: ‘ 在后面添加的内容‘;
        }

:focus 这个也类似于我们常用的:hover 用来动态选择获取焦点的元素

DEMO:别如获取焦点的input框改变背景颜色

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        input:focus{
            background-color: #00b3ee;
        }
    </style>
</head>
<body>

    输入框1:<input type="text"><br>
    输入框2:<input type="text">
</body>
</html>

:nth-child(n) 选取每个父元素的第n个子元素

:nth-last-child(n) 选取每个父元素从后向前数的第n个元素

:last-child 选择每个父元素的最后一个子元素

注意 这个选择器慎用  因为选择面太大 不好控制

DEMO:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        :not(p){
            border:solid red 1px;
        }
    </style>
</head>
<body>
    <div>
        <p>我是P元素</p>
        <p>我是P元素</p>
        <p>我是P元素</p>
        <span>我不是p元素 我是span元素</span>
        <p>我是P元素</p>
    </div>
</body>
</html>

时间: 2024-08-06 20:07:56

CSS3高级选择器的相关文章

在IE中使用CSS3高级选择器

CSS3高级选择器确实很强大,可以显著简化html代码,大幅提升CSS的可读性.IE9以下的IE浏览器是不支持CSS3高级选择器,但是有额外的方法可以使IE6-IE8浏览器也能使用CSS高级选择器. 需要先下载两个文件: domassistant.js    http://www.domassistant.com/ selectivizr.js    http://selectivizr.com/ 使用方法: 在head标签之间或者body标签之后导入这两个文件就可以了 <!--[if IE]>

(转载)css高级选择器

以前由于考虑到IE6等浏览器的兼容属性,常常对于高级的css选择符不感兴趣,最近开始,发现前端方面的IE6其实已经逐渐的消失了,学会用css3的高级选择器,可以起到事半功倍的效果,所以以后将会加强这方面的学习和积累一些经验,今天重温以前被人用过的很多选择器,当然有一些也许你还不知道,没关系,从现在开始学习吧. CSS是对网页设计师可用的最强大的工具之一.使用它我们可以在几分钟内改变一个网站的界面,而不用改变页面的标签.但是尽管事实上,我们每个人也 都意识到了它是有用的,CSS 选择器远未发挥它们

python全栈开发day37-css三种引入方式、基础选择器、高级选择器、补充选择器

一.昨日内容回顾 div:分割整个网站,很多块 (1)排版标签 (2)块级标签 独占一行 可以设置高和宽,如果不设置宽高,默认是父盒子的宽 span: (1) 小区域 (2)文本标签 (3)在一行内显示,不能放置容器类(块)的盒子 (4)宽高不能设置 (5)宽高跟span的内容相关 a: (1)文本级标签 (2)不能设置高和宽 (3)超链接href:连接资源 title 鼠标的悬浮时的标题 跳转顶部top: <div id= 'top'> <div> ....... <a h

web前端——css高级选择器

高级选择器分为: 后代选择器 子代选择器 并集选择器 交集选择器 属性选择器 伪类选择器 伪元素选择器 后代选择器 使用空格表示后代选择器.顾名思义,父元素的后代(包括儿子,孙子,重孙子) .container p{ color: red; } .container .item p{ color: yellow; } 子代选择器 使用>表示子代选择器.比如div>p,仅仅表示的是当前div元素选中的子代(不包含孙子....)元素p. 1 .container>p{ 2 color: ye

jQuery高级选择器

高级选择器方法: find().children().next().nextAll().prev().prevAll().siblings().nextUntil().prevUntil() 这些方法如果不传递参数,相当于传递了('*'),即所有节点.如果传递了参数,例如 find('p'), next('a'),则表示选择指定的标签元素. find():选择正在处理的元素的后代元素 find('p'):选择正在处理的元素的后代元素中的p元素 children(): 选择正在处理的元素的所有儿子

CSS引入方式,高级选择器

css引入方式:  1.内部样式      style标记      在head标记中     应用范围:当前整个页面中应用  2.行内样式      style属性      <p  style="color:black; font-size:24px">行内样式</p>    应用范围:指定的标签内应用,优先级高于内部样式     不太推荐用这种方式  3.外部样式      声明:.css样式文件       引入:         链接方式:<li

jQuery高级选择器和其等价方法

jQuery选择器和css一样,但兼容性更好 <body> <p>p1</p> <p>p1</p> <p>p1</p> <div id="box"> <p>p2</p> <p>p2</p> <p>p2</p> <div> <p>p3</p> <p>p3</p>

CSS3常用选择器总结

CSS3选择器 中午吃饭时与同事简单聊了下H5和C3为我们提供的便利,晚上下班后简单整理了下CSS3的选择器,在这里跟大家分享下. CSS3新增了许多灵活查找元素的方法,极大的提高了我们查找元素的效率和精准度.CSS3选择器与jQuery中所提供的绝大部分选择器兼容. 1.属性选择器 其特点是通过属性来选择元素,具体有以下5种形式(E是element的首字母,下面都是简写代替,程序员总是那么懒,哈哈哈): 1.E[attr] 表示存在attr属性即可: /*存在*/ [class]{/*选中的是

CSS系列:CSS3新增选择器

CSS系列:CSS3新增选择器 1. CSS1定义的选择器 选择器 类型 说明 E 类型选择器 选择指定类型的元素 E#id ID选择器 选择匹配E的元素,且匹配元素的id为“id”,E选择符可以省略. E.class 类选择器 选择匹配E的元素,且匹配元素的class属性值为“class”,E选择符可以省略. E F 包含选择器 选择匹配F的元素,且该元素被包含在匹配E的元素内. E:link 链接伪类选择器 选择匹配E的元素,且匹配元素被定义了超链接并未被访问.例:a:link E:visi