话说园子里也混迹多年了,但是基本没写过blog,写点基础的,那就从css3选择器开始吧。

 Css3选择器

先说下,为什么提倡使用选择器。

  1. 使用选择器可以将样式与元素直接绑定起来,在样式表中什么样式与什么元素匹配一目了然,修改起来也很方便。
  2. 减少样式表的代码量。

属性选择器

  1.[att*=val]属性选择器

  意义:表示元素用att表示的属性的属性值包含用val表示的字符,则该元素使用这个样式

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
[id*=demo]
{
width: 100px;
height: 100px;
background-color: #000099;
} </style>
</head>
<body>
<div id="demo"></div>
</body>
</html>

  2.[att^=val]属性选择器

  意义:表示元素用att表示的属性的属性值以val表示的字符串开头,则该元素使用这个样式。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
[id^=demo]
{
width: 100px;
height: 100px;
background-color: #000099;
margin: 10px;
} </style>
</head>
<body>
<div id="demo"></div>
<div id="demo1"></div>
</body>
</html>

  3.[att$=val]属性选择器

  意义:表示元素用att表示的属性的属性值以val表示的字符串结尾,则该元素使用这个样式

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        [id$=o]

        {

            width: 100px;

            height: 100px;

            background-color: #000099;

            margin: 10px;

        }

    </style>

</head>

<body>

<div id="demo"></div>

<div id="demooo"></div>

</body>

</html>

  结构性伪类选择器

  伪类选择器是指已经定义好的选择器,不能随便起名。

  例如:a:link,a:visited,a:hover,a:active.

  伪元素选择器是指已经定义好的为元素使用的选择器。

  1. first-line伪元素选择器
<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       p:first-line

       {

           color: red;

       }

    </style>

</head>

<body>

  <p>

      hello world

      <br/>

      你好

  </p>

</body>

</html>

2.first-letter 伪元素选择器

 <!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       p:first-letter

       {

           color: red;

       }

    </style>

</head>

<body>

  <p>

      hello world

  </p>

  <p> 你好</p>

</body>

</html>
befor伪元素选择器
<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       li:before

       {

           content: '*';

       }

    </style>

</head>

<body>

   <ul>

       <li>demo1</li>

       <li>demo1</li>

       <li>demo1</li>

       <li>demo1</li>

       <li>demo1</li>

   </ul>

</body>

</html>

after伪元素选择器

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       li:after

       {

           content: '*';

       }

    </style>

</head>

<body>

   <ul>

       <li>demo1</li>

       <li>demo1</li>

       <li>demo1</li>

       <li>demo1</li>

       <li>demo1</li>

   </ul>

</body>

</html>

  root选择器

  root选择器将样式绑定到页面的根元素。在使用:root与body元素的背景时,根据不同的条件,显示效果不同

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       :root

       {

           background-color: #003300;

       }

        body

        {

            background-color: yellow;

        }

    </style>

</head>

<body>

<p>你好</p>

</body>

</html>

  not 选择器

  排除结构元素下面子结构元素,使他不使用该元素

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        body *:not(h1)

        {

            background-color: yellow;

        }

    </style>

</head>

<body>

<h1>大家好</h1>

<p>你好</p>

</body>

</html>

  empty选择器

  当元素内容为空时使用的样式。

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        td:empty

        {

            background-color: yellow;

        }

    </style>

</head>

<body>

<table border="1">

    <tr>

        <td width="100px">1</td>

        <td width="100px">2</td>

        <td width="100px"></td>

    </tr>

</table>

</body>

</html>

  target选择器

  使用target选择器给页面中的target元素使用样式

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        :target

        {

            background-color:yellow;

        }

    </style>

</head>

<body>

<table border="1">

   <a href="#text3">示例1</a>

    <div id="text1">

        <h1>你好</h1>

        <p>你好你好你好你好你好你好你好你好你好你好你好你好你好你好</p>

    </div>

    <div id="text2">

        <h1>你好</h1>

        <p>你好你好你好你好你好你好你好你好你好你好你好你好你好你好</p>

    </div>

    <div id="text3">

        <h1>你好</h1>

        <p>你好你好你好你好你好你好你好你好你好你好你好你好你好你好</p>

    </div>

</table>

</body>

</html>

  first-child、last-child选择器

  指定第一个子元素和最后一个子元素的样式

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       li:first-child

       {

           background-color: yellow;

       }

        li:last-child

        {

            background-color: #009999;

        }

    </style>

</head>

<body>

<table border="1">

   <ul>

       <li>1</li>

       <li>2</li>

       <li>3</li>

       <li>1</li>

   </ul>

</table>

</body>

</html>

  nth-child、nth-last-child选择器

  针对父元素中某个指定序号的子元素来指定样式。

  也可以使用Nth-child(even)对偶数子元素指定样式,Nth-child(odd)对奇数元素指定样式

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

       li:nth-child(2)

       {

           background-color: yellow;

       }

        li:nth-last-child(2)

        {

            background-color: #009999;

        }

    </style>

</head>

<body>

<table border="1">

   <ul>

       <li>1</li>

       <li>2</li>

       <li>3</li>

       <li>1</li>

   </ul>

</table>

</body>

</html>

  nth-of-type nth-last-of-type选择器

  这两个选择器是为了弥补nth-child、nth-last-child选择器的缺陷,这两个选择器只针对同类元素指定样式。

  UI元素状态选择器

  E:horver,E:active,E:focus选择器

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        input[type="text"]:hover

        {

            background-color: yellow;

        }

        input[type="text"]:focus

        {

            background-color: green;

        }

        input[type="text"]:active

        {

            background-color: red;

        }

    </style>

</head>

<body>

<input type="text" name="name">

</body>

</html>

  E:enabled,E:disabled,E:read-only,E:read-write选择器

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        input[type="text"]:disabled

        {

            background-color: green;

        }

        input[type="text"]:read-only

        {

            background-color:darkgrey;

        }

    </style>

</head>

<body>

<input type="text" disabled>

<br>

<input type="text" >

<br>

<br>

<input type="text" readonly="readonly" >

</body>

</html>

  E:checked、E:default选择器

  E:checked指定复选框选取时的样式

  E:default 指定默认选取框的样式

  

E::selection选择器

  指定元素处于选中状态时的样式

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

        p::selection

        {

            background-color: goldenrod;

        }

    </style>

</head>

<body>

 <p>测试测试</p>

</body>

</html>
 

神奇的CSS3选择器的更多相关文章

  1. 总结30个CSS3选择器

    或许大家平时总是在用的选择器都是:#id  .class  以及标签选择器.可是这些还远远不够,为了在开发中更加得心应手,本文总结了30个CSS3选择器,希望对大家有所帮助. 1 *:通用选择器 ;; ...

  2. 总结30个CSS3选择器(转载)

    或许大家平时总是在用的选择器都是:#id  .class  以及标签选择器.可是这些还远远不够,为了在开发中更加得心应手,本文总结了30个CSS3选择器,希望对大家有所帮助. 1 *:通用选择器 * ...

  3. CSS3 选择器——属性选择器

    上一节在<CSS3选择器——基本选择器>中主要介绍了CSS3选择器的第一部分,这节主要和大家一起来学习CSS3选择器的第二部分——属性选择器.属性选择器早在CSS2中就被引入了,其主要作用 ...

  4. css3 选择器(三)

    接css3选择器(一) 接css3 选择器(二) 这篇和前两篇内容相关性不大,主要是涉及到一些css3的状态选择器,所以标题从一开始. 一.[:enabled]选择器 一看这个属性就知道是专为表单元素 ...

  5. CSS3选择器介绍

    1.css3属性选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  6. CSS3 选择器——基本选择器

    CSS的选择器,我想大家并不会陌生吧,因为天天在使用,但对于CSS3的选择器,要运用的灵活到位,我想对很多朋友还是一定的难度,特别是CSS3中的:nth选择器.那么从现在开始我们先丢开他们版本的区别, ...

  7. CSS3选择器的研究,案例

    在上一篇CSS3选择器的研究中列出了几乎所有的CSS3选择器,和伪类选择器,当是并没有做案例的研究,本想在那篇文章里面写,但想想如果把案例都写在那篇文章里面,对于查找来说就不是很方便,所有另开一篇来讲 ...

  8. css3选择器(一)

    直接开始正文. 一.css3同级元素通用选择器[update20161228] 选择器:E~F 匹配任何在E元素之后的同级F元素 Note:E~F选择器选中的是E元素后面同级元素中的全部F元素. 例: ...

  9. css3 选择器(二)

    接css3选择器(一) 八.结构性伪类选择器[:nth-child(n)] :nth-child(n)选择器用来匹配某个父元素的一个或多个特定的子元素,和jquery中一样. 其中"n&qu ...

随机推荐

  1. UVaLive 6625 Diagrams & Tableaux (状压DP 或者 DFS暴力)

    题意:给一个的格子图,有 n 行单元格,每行有a[i]个格子,要求往格子中填1~m的数字,要求每个数字大于等于左边的数字,大于上边的数字,问有多少种填充方法. 析:感觉像个DP,但是不会啊...就想暴 ...

  2. Android应用开发学习之相对布局

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 相对布局RelativeLayout是指按照组件之间的相对位置进行布局,如一个组件在另一个组件的左边.右边.上边或下 ...

  3. JEECMS-自定义标签[list]

    1.自定义标签类 import static cn.com.yhxl.common.web.freemarker.DirectiveUtils.OUT_LIST; import static free ...

  4. 最大流&最小割 - 专题练习

    [例1][hdu5889] - 算法结合(BFS+Dinic) 题意 \(N\)个点\(M\)条路径,每条路径长度为\(1\),敌人从\(M\)节点点要进攻\(1\)节点,敌人总是选择最优路径即最短路 ...

  5. JS 命名空间 实现方式 收集

    一. 对象注册式 // 声明一个全局对象Namespace,用来注册命名空间Namespace = new Object(); // 全局对象仅仅存在register函数,参数为名称空间全路径,如&q ...

  6. python常用功能总结

    经常写python,但很多小的点都记不住,每用必查,总结下来,下次查自己的吧. 1.时间获取: import time print  time.strftime("%Y-%m-%d %H:% ...

  7. C# 强制关闭当前程序进程(完全Kill掉不留痕迹)

    C# 强制关闭当前程序进程(完全Kill掉不留痕迹) /// <summary> /// 运行DOS命令 /// DOS关闭进程命令(ntsd -c q -p PID )PID为进程的ID ...

  8. mmc生产运输问题

    本题目结合生产和运输,增加了约束, 其实,比较生产,运输问题,大同小异, 解法基本相同.

  9. exosip

    exosip针对UA是对osip进行扩展,oSIP不提供不论什么高速产生请求消息和响应消息的方法,全部请求消息和响应消息的形成必须调用一组sip message api来手动组装完毕,所以作者在osi ...

  10. 安卓模拟器BlueStacks 安装使用教程(图解)

    系统要求 操作系统 Win XP SP3/Vista/Win 7/Win 8/Win 8.1 所需的运行环境 Win XP用户请先升级到SP3 并安装Windows Installer 4.5 Win ...