CSS定义

CSS:Cascading Style Sheet(层叠样式表)

// 写法
选择器 {
属性名: 属性值;
}

CSS样式表

(1)三种样式表使用

// 内联样式
<div style="width: 100px; height: 100px;"></div> // 内部样式表
<style type="text/css">
div {
width: 100px;
height: 100px;
}
</style> // 外部样式表
<link rel="stylesheet" type="text/css" href="">

(2)三种样式表的权重和优先级

内联样式 > 内部样式表 > 外部样式表

选择器

(1)6大基础选择器

// 1、id选择器:唯一对应
<div id="box"></div>
<style type="text/css">
#box {
color: red;
}
</style> // 2、类class选择器:统一类
<div class="box"></div>
<style type="text/css">
.box {
color: red;
}
</style> // 3、标签选择器:初始化标签使用
<div></div>
<style type="text/css">
div {
color: red;
}
</style> // 4、*通配符标签
<style type="text/css">
* {
margin: 0;
}
</style> // 5、属性选择器:表单中input常用
<div id="box1"></div>
<a href="http://www.baidu.com"></a>
<style type="text/css">
[id="box"] {
color: red;
}
[href] {
text-decoration: none;
}
</style> // 6、最高优先权
<style type="text/css">
div {
background: red !important;
}
</style>

(2)6大基础选择器优先级

!important > id > class | 属性 > 标签 > *

(3)复合选择器

// 1、派生选择器(父子选择器),从右到左匹配。包含两种:包含选择器和子选择器
<header>
<p>
<em>你好</em>
</p>
</header>
<style type="text/css">
/*包含选择器*/
header p em {
color: red;
} /*子选择器:必须层层父子级*/
header > p > em {
color: red;
}
/*直接父子选择器*/
p > em {
color: red;
}
</style> // 2、相邻兄弟选择器:1、同父级;2、相邻;3、在其之后
<p>这里是第一个P标签</p>
<h2 class = 'h2'>标题H2</h2>
<p>这里是第一个P标签(变色)</p>
<p>这里是第二个P标签</p>
<style type="text/css">
.h2 + p{
color: red;
}
</style> // 3、兄弟选择器~(匹配选择器)
<p>这里是第一个P标签</p>
<h2 class = 'h2'>标题H2</h2>
<p>这里是第一个P标签(变色)</p>
<p>这里是第二个P标签(变色)</p>
<style type="text/css">
.h2 ~ p{
color: red;
}
</style> // 4、并列选择器
<h1 class="title">你好!</h1>
<style type="text/css">
h1.class {
color: pink;
}
</style> // 5、分组选择器
<input type="text" />
<br />
<textarea cols="3" rows="10"></textarea>
<style type="text/css">
input,
textarea {
outline: none;
}
</style>

CSS权重(256进制)计算规则

(1)分类权重

  • *:0
  • 标签、伪元素:1
  • class、属性、伪类 :10
  • id:100
  • 内联样式:1000
  • !important:正无穷

(2)计算示例

// 基础选择器优先级
正无穷 > 100 >10 >1 >0
!important > id > class | 属性 > 标签 > * // 权重计算
<div id="div_id" class="div_class">
<h1 id="h1_id" class="h1_class">
你好!
</h1>
</div>
<style type="text/css">
#div_id h1 {
color: pink; // 100 + 1
}
.div_class .h1_class {
color: purple; // 10 + 10
}
.div_class #h1_id.h1_class { // 10 + 100 + 10
color: red;
}
</style>

伪类和伪元素

  1. CSS2中伪类和伪元素都是要单冒号(:)
  2. CSS3中伪类使用单冒号(:),伪元素使用双冒号(::)

伪类参考
伪元素参考

CSS篇-样式表、选择器、权重、伪类的更多相关文章

  1. CSS基础--属性选择器、伪类选择器

    属性选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  2. CSS选择器:伪类(图文详解)

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 伪类(伪类选择器) 伪类:同一个标签,根据其不同的种状态,有不同的样式. ...

  3. css 04-CSS选择器:伪类

    04-CSS选择器:伪类 #伪类(伪类选择器) 伪类:同一个标签,根据其不同的种状态,有不同的样式.这就叫做"伪类".伪类用冒号来表示. 比如div是属于box类,这一点很明确,就 ...

  4. css 05-CSS样式表的继承性和层叠性

    05-CSS样式表的继承性和层叠性 #本文重点 CSS的继承性 CSS的层叠性 计算权重 权重问题大总结 CSS样式表的冲突的总结 权重问题深入 同一个标签,携带了多个类名 !important标记 ...

  5. Bootstrap的优先级、选择器、伪类

    概述:Bootstrap的CSS组件的核心就是选择器的定义以及在各自优先级上的处理.由于大部分的选择器都非常的常见就一笔带过了,这里重点介绍一下Bootstrap用到的知识点. 一.优先级 之前我们使 ...

  6. css--css选择器,伪类

    前戏 前面我们说过CSS规则由选择器和声明组成,我们要给标签设置属性,那我们就要找到对应的标签,CSS选择器可以帮我们找到我们需要的标签 css选择器有: 标签选择器 类选择器 ID选择器 全局选择器 ...

  7. CSS3 选择器——笔记+实战案例(基本选择器、组合选择器、属性选择器、伪类选择器)

    使用CSS3 选择器——笔记 CSS通过选择器控制HTML元素,CSS选择器对网页对象可以实现一对一.一对多或者多对一的匹配. 一.CSS3选择器分类 CSS选择器在CSS2.1选择器的基础上新增了属 ...

  8. CSS3 01. CSS3现状、属性选择器、伪类选择器、结构伪类、伪元素选择器、颜色、文本阴影shadow、盒子模型、私有化前缀

    CSS 3 现状 兼容性差,需添加私有前缀/移动端优于PC端/不断改进中/渐进增强原则/考虑用户群体/遵照产品的方案 : CSS3手册 需要阅读其--阅读及使用指引 []表示全部的可选项 || 或者 ...

  9. 理解是最好的记忆方法 之 CSS中a链接的④个伪类为何有顺序

    理解是最好的记忆方法 之 CSS中a链接的④个伪类为何有顺序 在CSS中,a标签有4种伪类,分别为: a:link, a:visited, a:hover, a:active 对其稍有了解的前端er都 ...

随机推荐

  1. 一个http请求的完整详细过程

    整个流程 域名解析: 与服务器建立连接:tcp连接: 发起HTTP请求: 服务器响应HTTP请求,浏览器得到html代码: 浏览器解析html代码,并请求html代码中的资源(如js.css.图片): ...

  2. IFIX 5.9 报警存sql

    环境 win7x64 + ifix 5.9 + sql server 2008 (sql 我装在了别的win10的机器上,和ifix的win7不在同一个机器,网是通的) 1 安装sql server ...

  3. 如何从 ToB 企业级 IM 产品中学习技术选型和架构

    如何从 ToB 企业级 IM 产品中学习技术选型和架构 多端,全端 React React Native Flutter Electron Lark https://www.larksuite.com ...

  4. JS Object Deep Copy & 深拷贝 & 浅拷贝

    JS Object Deep Copy & 深拷贝 & 浅拷贝 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Refe ...

  5. Nmap & ncat

    Nmap & ncat https://github.com/udacity/course-ud303 https://nmap.org/dist/nmap-7.30-setup.exe Yo ...

  6. Cocos Creator 游戏开发

    Cocos Creator 游戏开发 https://www.cocos.com/products#CocosCreator 一体化编辑器: 包含了一体化.可扩展的编辑器,简化了资源管理.游戏调试和预 ...

  7. 如何使用 js 实现一个 Promise.all 方法 PromiseAll

    如何使用 js 实现一个 Promise.all 方法 PromiseAll Promise.all PromiseAll https://developer.mozilla.org/en-US/do ...

  8. Angular Routing

    Angular Routing v9.0.7 https://angular.io/start/start-routing

  9. NGK:APP一站式挖矿高收益项目

    NGK是10月中旬刚上线的公链项目,采用手机挖矿形式.NGK数字增益平台,200美金即可入场,收益可观,分为静态和动态两种,投资算力收益超高.邀请好友挖矿还有额外的返佣. NGK立志为所有人创造无差别 ...

  10. epoll 原理

    本文转载自epoll 原理 导语 以前经常被人问道 select.poll.epoll 的区别,基本都是靠死记硬背的,最近正好复习 linux 相关的内容,就把这一块做个笔记吧,以后也能方便查阅. e ...