一、选择符的种类

1)通配选择符

它用来给页面所有的元素设置样式

*{margin:0;padding:0;}。但是实际当中不建议这么用,页面中用到了哪些样式,就统一设置样式,因为*影响性能。也可以给某元素的所有的后代元素应用样式:p *{color:red;}

2)标签选择符

顾名思义,通过标签来限定样式作用域

div{padding:5px;}

3)类选择符

和面向对象中的类有着类似的功能,需要的时候调用即可,达到重用的目的。将样式定义成一个类,需要使用的地方调用即可。

.myClass{font-size:24px;}

<p>普通文字<p>

<p class="myClass">自定义样式</p>

4)ID选择器

通过#ID来精确定位页面元素的属性

#trapper{padding:10px;font-size:26px;}

<div id="trapper">

<ul>

<li>1</li>

<li>2</li>

</ul>

</div>

5)包含选择符

直接上实例

div strong{font-size:24px;text-decoration:underline;}

<div>

  <p><strong>我是div中的p标签下的strong内容(”孙子”)</strong></p>

  <strong>我是div中的strong内容(”孩子”)</strong>

</div>

可见,包含选择会将某元素下的所有包含元素都设置样式。不管层级有多深。

6)子选择符

和上边的区别,大家看出来了吗?

div>strong{font-size:24px;text-decoration:underline;}

<div>

  <p><strong>我是div中的p标签下的strong内容(”孙子”)</strong></p>

  <strong>我是div中的strong内容(”孩子”)</strong>

</div>

7)相邻选择符

控制相邻的元素样式

div+strong{font-size:24px;text-decoration:underline;}

<div>

  <strong>我是p的邻居</strong>

  <p><strong>我是div中的p标签下的strong内容(”孙子”)</strong></p>

  <div>div中的div</div>

  <strong>我是div中的strong内容(”孩子”),而且我也是p的邻居</strong>

  <strong>我显示有下滑线吗</strong>

</div>

要是p+strong+strong呢?strong+strong(可以并排多个strong看看效果)?css很强大!!

8)属性选择符

四种方式

E[attr] 具有attr属性的所有HTML标签 ,如div[class]表示具有class属性的所有div

E[attr="value"] 具有attr属性且属性值为value的标签,如input[type="text"]{border:2px;}

E[attr~="value"] 具有attr属性,且有多个空格隔开的字段,其中一个字段为value的元素。

E[attr|="value"] 具有attr标签,且必须以value值开始及使用-分隔的元素

9)混合选择符

如p.className p#id等等

二、CSS选择符优先级计算

总体上按照就近原则应用样式。一般计算如下

行内样式:1000

ID选择符:0100

类选择符:0010

标签选择符:0001

例如:body #wrapper p {...},那么它的优先级指数就是 1+100+1=102,而body div #wrapper p {...}的优先级指数就是 1+ 1 +100 + 1 =103

但需要注意一个关键字!important,除了IE6,他的css优先级最高。

#box {
     color:red !important;
     color:blue;
 }

这样,对于IE7+显示字体颜色为红色,不会被蓝色覆盖掉。IE6显示为蓝色。

本文参考 CSS那些事儿,大家想看详细信息,请看这本书

CSS知识点:选择符的更多相关文章

  1. CSS 组合选择符

    CSS 组合选择符 组合选择符说明了两个选择器直接的关系. CSS组合选择符包括各种简单选择符的组合方式. 在 CSS3 中包含了四种组合方式: 后代选取器(以空格分隔) 子元素选择器(以大于号分隔) ...

  2. css关系选择符

    <!Doctype html> <html> <head> <meta http-equiv="Content-Type" content ...

  3. CSS:CSS 组合选择符

    ylbtech-CSS:CSS 组合选择符 1.返回顶部 1. CSS 组合选择符 CSS 组合选择符 组合选择符说明了两个选择器直接的关系. CSS组合选择符包括各种简单选择符的组合方式. 在 CS ...

  4. CSS属性选择符

    属性选择符: E[att] 选择具有att属性的E元素. <style type="text/css"> a[class]{ background-color: red ...

  5. CSS高级选择符

    2016-11-07 <css入门经典>第八章 1.属性选择器 选择器 描述 [attribute] 用于选取带有指定属性的元素. [attribute=value] 用于选取带有指定属性 ...

  6. CSS 的选择符

    CSS是什么? 如果说元素是标记代码的构建块料,那么CSS就是约束这些构建块料样式的规则. CSS规则的组成 CSS的规则由 选择符 和属性,值组成. Css选择符:选择符是规则中用于确定样式所涵盖的 ...

  7. CSS之选择符、链接、盒子模型、显示隐藏元素

    <html> <head> <meta charset="utf-8"> <title>选择符.链接.盒子模型.显示隐藏元素< ...

  8. 1+x证书学习日志——css 基本选择符

    ##css选择符                 1:类型选择符 直接用标签名称当作选择符                     特点:选中所有同类元素                 2:id名称 ...

  9. CSS组合选择符

    组合选择符说明了两个选择器直接的关系. 目录: 后代选取器(以空格分隔) 子元素选择器(以大于号分隔) 相邻兄弟选择器(以加号分隔) 普通兄弟选择器(以破折号分隔) 后代选取器 后代选取器匹配所有值得 ...

  10. 强大的CSS 属性选择符 配合 stylish 屏蔽新浪微博信息流广告

    新建一条微博域名下的规则: @-moz-document domain("weibo.com") { #v6_pl_rightmod_rank,#v6_pl_rightmod_ad ...

随机推荐

  1. matlab入门 蜂窝阵列

    B{1,1}=[1,2]; B{1,2}='kitty'; B B = [1x2 double]    'kitty' celldisp(B) B{1} =      1     2 B{2} =   ...

  2. ubuntu经常使用的命令摘要

    1.df命令 # df -ha 显示所有文件和分区的使用 # df -h /dev/sda1 显示sda1磁盘使用率 # df -T 显示文件系统名称属于每个分区.区的格式类型(比方ext3) 注:h ...

  3. 2014年辛星Javascript解读第四节 流程控制语句

    上一节我们介绍了函数,本小节我们介绍一下流程控制语句,对于不论什么一门编程语言来说,流程控制都是很重要的,也就是我们常说的顺序结构.选择结构和循环结构. ************选择结构******* ...

  4. Codeforces Round #254 (Div. 2):A. DZY Loves Chessboard

    A. DZY Loves Chessboard time limit per test 1 second memory limit per test 256 megabytes input stand ...

  5. 关于cocos2dx导入安卓项目至eclipse的诸多问题

    看视频实在是有点蛋疼,尽管我也想在苹果上做,可是奈何自己是一个小屌丝,根本买不起高富帅的装备.所以仅仅能硬着头皮去处理win以下的问题. 在把用C++语言编写的cocos2dx项目编译编译完毕之后,导 ...

  6. Ubuntu14.04 工作区设置

    记ubuntu您可以切换工作区,但我按住 Ctrl+Alt+方向键 交换器,有没有反应,在这样的使用切换啊. 原来Ubuntu14.04默认并没有开启,仅仅须要设置一下就OK了. 1.打开系统设置.外 ...

  7. (大数据工程师学习路径)第四步 SQL基础课程----SQL介绍及mysql的安装

    一.数据库和SQL介绍 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它的产生距今已有六十多年.随着信息技术和市场的发展,数据库变得无处不在:它在电子商务.银行系统等众多领域都 ...

  8. 使用linux服务logrotate文件tomcat日志文件

    使用notepad++编辑本地文件 tomcat: /usr/tomcat/logs/catalina.out { copytruncate daily dateext nocompress miss ...

  9. linux_inux中find批量删除空文件及空文件夹脚本

    1.{}和之间有一个空格 2.find . -name 之间也有空格 3.exec 是一个后续的命令,{}内的内容代表前面查找出来的文件 linux下批量删除空文件(大小等于0的文件)的方法 rm - ...

  10. Ubuntu下一个openldapserver部署步骤

    1:安装zlib 下载zlib-1.2.3.tar.gz(或其它版本号) wget http://down1.chinaunix.net/distfiles/zlib-1.2.3.tar.gz # . ...