CSS选择器

基础选择器

  • 通配符选择器

    • 通配符,作用于文档中所有的元素,为文档设置默认样式.
* {
  color:red;
}
  • 元素/标签选择器
p {
 color:red;
}
  • ID选择器
    • 以#开头加自定义id名,id名以字母开头.
 #box{
  color:red;
}
  • 类选择器
    • 以.开头加自定义类名.
.content {
  color:red;
}
  • 属性选择器
    • 属性名放在中括号内
[name=lht] {
  color:red;
}

后代选择器

.content #box p {
  font-size: 20px;
}

子元素选择器

  • 匹配某元素的直接后代元素
#odiv>p {
  color: red;
}

相邻兄弟元素

  • 选择紧接在另一元素后的元素,且二者有相同父元素
    • 用+号表示相邻兄弟关系
h3+p {
  color: green;
}

交集选择器

  • 类选择器,ID选择器可以结合元素选择器来使用,形成交集选择器
h3.content {
  color: red;
}
h3#h3 {
  background-color: yellow;
}

组合选择器

#h3,h1,p,span {
  color: #cceeaa;
}

动态伪类选择器

a:link {
  color:green;
}
a:visited {
  color:yellow;
}
a:active {
  color:pink;
}
a:hover {
  color:red;
}

伪元素选择器

  • before在某个标签内容的最前方添加内容
  • after在某个标签内容的末尾添加内容
  • first-line对首行文字设置样式
  • first-letter对首字母设置样式
p:before {
  content: "HELLO";
}
p:after {
  content: "see you";
}
p:first-line {
  color: red;
  font-size: 20px;
}
p:first-letter {
  font-size: 32px;
  color: black;
}

CSS3新增选择器

child系列选择器

  • first-child选中作为父元素的第一个子元素的元素
  • last-child选中作为父元素的最后一个子元素
p:first-child {
  color:#f00;
}
p:last-child {
  color:#f00;
}
  • nth-child(n)正序 选中父元素的第n个子元素;nth-child(odd)选中奇数,nth-child(even)选中偶数;nth-child(2n+3)n的取值从0开始
  • nth-last-child(n)倒序
  • only-child选中父元素只包含一个子元素的标签
li:nth-child(7) {
  color:#f00;
}
li:nth-last-child(3n+1) {
  color:#f00;
}  
li:only-child {
  color:#f00;
}

of-type系列选择器

  • first-of-type选择父元素内指定元素类型的第一个
  • last-of-type选择父元素内指定元素类型的最后一个
  • nth-of-type(n)选择指定序号的标签(用法和nth-child相同)
  • nth-last-of-type(n)选择指定序号的标签(倒序)(用法和nth-last-child相同)
  • only-of-type选择父元素只包含一个同类型的子元素
span:first-of-type {
  color:#f00;
}
p:last-of-type {
  color:#f00;
}
dt:nth-of-type(2) {
  color:#f00;
} 
dt:nth-last-of-type(3n+1) {
  color:#f00;
}
dt:only-of-type {
  color:#f00;
}

兄弟选择器

  • E~F,E和F是同级元素,且F在E之后,将选中E元素后面的所有F元素(下面例子中将选中除第一个span外所有的span标签)
span~span {
  color:#f00;
}

伪对象选择器

  • CSS3中对之前的伪元素进行了调整,多加了一个:,此外伪元素还增加了::selection(选中状态下的样式)
p::first-line {
  color:red;
}
p::first-letter {
  color:green;font-size:25px;
}
a::before {
  content:url("qvod.jpg");
}
a::after {
  content:url("qvod.jpg");
}
span::selection {
  background:#F0F;
}

UI状态伪类选择器

  • 针对表单
input:disabled {
  background:yellow;color:green; /*被禁止状态下状态下的颜色*/
}
input:enabled {
  background:#f90;color:red;
}
input:checked+span {
  background:red; /*选中状态下的颜色*/
}

属性选择器

  • ~表示前面有空格
  • |="a",表示属性值是以a或a-开头的
  • href^="http://"表示以http://开头
  • href$="rar"表示以rar结尾
  • href*="o"表示其中含有o
p[id] {
background:red;
}
p[id="green"] {
background:green;
}
p[class~="yellow"] {
background:yellow;
}
p[class|="a"] {
background:blue;
}
a[href^="http://"] {
  color:red;text-decoration:none;
}
a[href$="rar"] {
  color:pink;text-decoration:none;
}
a[href$="rar"]:after {
  content:url(images/rar.jpg);
}
a[href*="o"] {
  background:green;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.class 和 id 的使用场景? 类选择器允许以一种独立于文档元素的方式来指定样式。该选择器可以单独使用,也...
    草鞋弟阅读 2,469评论 0 1
  • 1.class 和 id 的使用场景? 两者都能选取DOM节点并给DOM节点添加样式,但是W3C标准里规定页面中只...
    饥人谷_米弥轮阅读 426评论 0 1
  • 1.class 和 id 的使用场景? class:类选择器,一个标签可以有多个类且同一个类可以用到不同的标签上,...
    饥人谷_兔子君阅读 1,211评论 0 0
  • class 和 id 的使用场景? 每个标签只能设置一个id,此id在页面中只能出现一次。id多用于页面分块时块级...
    cross_王阅读 450评论 0 0
  • 基本选择器 *{} 通配符选择器,适用任何元素h1 标签选择器,选择h1标签内元素....
    字母31阅读 641评论 0 0