在 CSS 中,选择器是一种模式,用于选择需要添加样式的元素。比如最常用到的#id,.class,标签选择器。

  随着CSS3到来,增加了很多新型选择器,这里就常用的做一个总结。

  1.属性选择器。

  在css3中,追加了三个属性选择器,分别为[attribute*=value],[attribute^=value],[attribute$=value],使选择器有了通配符的概念。这三个选择器分别是包含,首字符,结束字符。

举个栗子:

a[src*="abc"]表示选择其 src 属性中包含 "abc" 子串的每个 <a> 元素。

a[src^="https"]表示选择其 src 属性值以 "https" 开头的每个 <a> 元素。

a[src$=".pdf"]表示选择其 src 属性以 ".pdf" 结尾的所有 <a> 元素。

  2.结构性伪类选择器

  CSS3 结构性伪类选择器,包含伪类选择器和伪元素选择器。伪类选择器在css中就存在,不再赘述。在伪元素选择器中包含 first-line、first-letter、before、after。

first-line顾名思义,应该是对某个元素中的第一行使用样式。

first-letter是对某个元素的首字母使用样式。

before用于在某个元素之前插入内容。

after用于在某个元素之后插入内容。

p:first-line{
color:red; /*将p元素第一行内容变为红色*/
}
p:first-letter{
color:blue; /*将p元素首个文字变为蓝色*/
} li:before{
  content:"--"; /*给每一个li元素内容前面加上"--"*/
} li:after{
  content:"这是对列表的解释"; /*给每一个li元素内容后面加上一段文字*/
  font-size:18px;
  color:green; /*可以加上一些样式以区分*/
}
<p>第一行<br/>第二行</p>
<ul>
  <li>列表1</li>
  <li>列表2</li>
  <li>列表3</li>
  <li>列表4</li>
</ul>

3.CSS3 选择器 root、not、empty 和 target

  CSS3 选择器 root、not、empty 和 target, root 选择器是绑定到页面的根元素中,如果想对某个结构元素使用样式,但是想排除这个结构元素下面的子结构元素,可以使用 not,使用 empty 选择器来指定当元素中内容为空白时使用的样式。

  root 选择器是绑定到页面的根元素中,根元素是指位于文档中最顶层的元素,在页面中就是指html的部分。如果此时还有body也设置了样式,那么body只在内容部份生效。

:root{
background-color:grey;/*页面背景变成灰色*/
}
  

  

not用于排除:

div *not(h1){
/*div中除h1以外都生效*/
}

:empty{}用于当元素内容为空时的样式,比如用在表格中,设置空表格的样式。

:target{}用于突出显示活动的 HTML 锚。

用法一:

p:target
{
border: 2px solid #D4D4D4;
background-color: #e5eecc;
}

用法二:

:target{
background-color:pink;/*被选中的区域背景变为粉色*/
} <a href="#a1">菜单一</a>
<a href="#a2">菜单二</a>
<div id="a1">
<h1>标题</h1>
<p>内容</p>
</div>
<div id="a2">
<h1>标题</h1>
<p>内容</p>
</div>

URL 带有后面跟有锚名称 #,指向文档内某个具体的元素。这个被链接的元素就是目标元素(target element)。

:target 选择器可用于选取当前活动的目标元素。

CSS3常用选择器(一)的更多相关文章

  1. CSS3常用选择器(三)

    在CSS3的选择器中,除了结构性伪类选择器外,还有一种UI元素状态伪类选择器.这些选择器的共同特征: 指定的样式只有当元素处于某种状态时才起作用,在默认状态下不起作用. 1.hover.focus.a ...

  2. CSS3常用选择器

    一.基本选择器 子元素选择器 概念:子元素选择器只能选择某元素的子元素语法格式:父元素 > 子元素 (Father > Children)兼容性:IE8+.FireFox.Chrome.S ...

  3. CSS3常用选择器(二)

    本文继续介绍css3新增的选择器. 1.选择器 first-child.last-child.nth-child 和 nth-last-child 利用这几个选择器能够针对一个父元素中的第一个子元素. ...

  4. CSS3 常用选择器

    p:last-of-type{background-color: red;} 选择p中最后一项 p:nth-of-type(2n){background-color: red;} 隔行变色里面也可以填 ...

  5. CSS3常用30种选择器总结

    CSS3常用30种选择器总结 HTML5/CSS3时尚的圆盘时钟动画 带当前日期 www.html5tricks.com/demo/html5-css3-clock-with-date/index.h ...

  6. CSS/CSS3常用样式小结

    1.强制文本单行显示: white-space:nowrap; 多行文本最后省略号: display: -webkit-box; -webkit-line-clamp:2; overflow: hid ...

  7. 【前端开发系列】—— CSS3属性选择器总结

    想想自己为什么要学CSS,作为一个开发过前端的人员来说,调试一个图片花了半天的时间,最后发现分隔符用错了,实在是一件很丢人的事情.因此,痛下决心来学习CSS,最近一周也会更新下相关的学习笔记. CSS ...

  8. [总结]CSS/CSS3常用样式与web移动端资源

    CSS/CSS3常用样式与知识点 IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条 ...

  9. css常用选择器选择器

    tap选择器 ulclass选择器 .id选择器 #后代选择器 a b子代选择器 a>b兄弟选择器 a + b 以a为参考给b加样式属性选择器 input [type="text&qu ...

随机推荐

  1. js事件处理机制

    一.事件处理程序 a.     DOM0级事件处理程序,被认为是元素的方法. var btn=document.getElementById('myBtn'); btn.onclick=functio ...

  2. 判断JS是否加载完成

    在正常的加载过程中,js的加载都是同步的,也就是在加载过程中,浏览器会阻塞接下来的内容的加载.这时候我们就要用到动态加载,动态加载是异步的,如果我们在后边要用到这个动态加载的js文件里的东西,就要保证 ...

  3. linux与windows的不同

    linux 严格区分大小写:linux 所有内容都以文件形式保存,包括用户和硬件:linux 不以文件后缀名来区分文件类型:但有一些便于管理员区分文件类型的约定俗称的后缀:windows下的程序不能直 ...

  4. strcat函数的使用需要注意的问题

    曾被这个函数困扰了好久,然后各种假设,验证:但是最后却发现这个函数并没有什么好讲的,原来的过错一切都源于忽略了“*dst去掉\0,然后加上*src,最后返回*dst”这句话的真正含义:给*dst分配的 ...

  5. App_Offline.htm 功能

    在ASP.NET 2.0 站点根目录下,只要存在 App_Offline.htm 文件,那么所有对.aspx的请求都将转向App_Offline.htm .而且浏览器的地址栏显示的是所请求的.aspx ...

  6. RabbitMQ 安装

    Install Erlang from the Erlang Solutions repository or Follow the instructions under "Installat ...

  7. pycharm基本设置

    python新建产生标题 File and Code Templates->Python Script pycharm代码行数 Editor->General->Appearance ...

  8. jquery中checkbox选中的问题之prop&attr惹的祸

    一个网上很多的例子如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  9. [Spring MVC] - Spring MVC环境搭建

    1) 复制Spring所需要的lib包         (这是SSH所需要的lib包,如果只使用spring,可以移除一些包) 2) 配置web.xml <?xml version=" ...

  10. windows 代理服务器的搭建,提供Android 端访问公网.

    这段时间遇到一个情况,移动的网络收费.但是可以访问学校内部的网络,比如说学校官网图书馆之类了.所以我这里便想到一个方法,用学校内部一个可以访问互联网的主机充当代理服务器(我这里使用自己的电脑,非服务器 ...