CSS 学习路线(二)选择器
选择器
规则结构:
分两个基本部分 选择器(selector)和声明块(declaration block) 组成
声明块:由一个或多个声明组成,每一个声明都是属性-值对
选择器分为:元素选择器,类选择器,后代选择器,通配选择器,ID选择器,属性选择器,伪类选择器.子元素选择器,相邻兄弟选择器.
元素选择器:往往是html元素,但是在XML允许创造新的标记语言.
eg:h1 p
h1{font-size:14px;}
类选择器:应用样式而不考虑具体涉及的元素.
eg:
.main{font-size:14px;}}
<p class="main">123</p>
ID选择器:和类选择器差不多.区别在于只能在文档运用一次,多次不符合规范,
eg:
#main{font-size:14px;}}
<p id="main">123</p>
通配选择器:运用在全局,但是不推荐.易出错.
eg:
*{font-size:14px;}
后代选择器:运用在父元素的所有子元素上,
eg:
h1 p{font-size:14px;} //运用在h1下的所有p元素
子元素选择器:运用在父元素的第一代子元素上
eg:
h1 > p{font-size:14px;} //运用在h1下的第一代p元素
相邻兄弟选择器:相同父元素下,选择紧跟着另一个元素后的元素
eg:
h1 + p{font-size:14px;}//运用在h1和p的父元素下,接下来的P元素
属性选择器:根据元素的属性来选择元素,分为四种:简单属性选择,具体属性选择,部分属性选择,特定元素选择
简单属性选择:
h1[class]{color:red;}
<p class="main">hello world</p>
具体属性选择:
h1[class="main"]{color:red;}
<p class="main">hello world</p>
部分属性选择:
h1[class*="main"]{color:red;}//含有就可以
h1[class^="main"]{color:red;}//main开头的元素
h1[class$="main"]{color:red;}//main结尾的元素
h1[class~="main"]{color:red;}//独立单词的元素
<p class="main qq">hello world</p>
特定属性选择:
*[lang|="en"]{color:red;}
<p lang="en-ss">Hello</p>
伪类元素选择器:为链接选择
eg:
顺序为LVHA
a:link{color:red;}//未访问的链接
a:visited{color:green;}//已访问的链接
a:hover{ color:red;}//悬浮在链接上
a:active{color:yellow;}//激活后的链接
还有 p:first-child 第一个子元素
:first-letter 首字母样式
:first-line 第一行样式
:before 之前插入内容 //body:before{content:"hello ";}
:after 之后插入内容 //body:after{content:"hello ";}
这是我总结的部分选择器基础知识.
CSS 学习路线(二)选择器的更多相关文章
- CSS学习笔记之选择器
目录 1.元素选择器 2.继承 3.选择器分组 4.声明分组 5.后代选择器 6.子元素选择器 7.相邻兄弟选择器 8.类选择器 9.ID 选择器 10.属性选择器 11.伪类 12.伪元素 1.元素 ...
- CSS学习笔记(1):选择器
一.元素选择器 HTML文档元素就是最基本的选择器 如: <!DOCTYPE html> <html lang="en"> <head> < ...
- CSS学习_属性选择器
CSS选择器参考 [attribute]——选取带有指定属性的元素: [attribute=value]——选取带有指定属性和值的元素: [attribute~=value]——选取属性值中包含指定词 ...
- css学习笔记二
下面来总结一下盒子模型,流式布局,浮动布局,层布局(定位布局). 1.盒子模型 有二种:IE盒子模型 和 标准w3c盒子模型 1)IE的盒子模型的content包含了padding和border 2) ...
- CSS学习笔记二:css 画立体图形
继上一次学了如何去运用css画平面图形,这一次学如何去画正方体,从2D向着3D学习,虽然有点满,但总是一个过程,一点一点积累,然后记录起来. Transfrom3D 在这一次中运用到了一下几种属性: ...
- css学习_css复合选择器
css复合选择器 a.交集选择器 (即...又...:选择器之间不能有空格) p.one{color:red;] b.并集选择器(中间由逗号隔开) p,div{color:red;} c.后代选择器 ...
- Html+css学习笔记二 标题
学习新标签,标题 <html> <head> <title>tags</title> </head> <body> <h1 ...
- CSS学习(二)
<!DOCTYPE html> <html> <head> <meta charset="{CHARSET}"> <title ...
- CSS学习(二)- 有关 hasLayout 和 BFC
1. hasLayout 概念说明 ‘Layout’ 可以被某些 CSS property(特性)不可逆的触发,而某些 HTML 元素本身就具有 layout . ‘Layout’ 在 IE 中可以通 ...
随机推荐
- 洛谷P3384 树链剖分
如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 操作1: 格式: 1 x y z 表示将树从x到y结点最短路径上所有节点的值都加上z 操作2: 格式: 2 x ...
- 理解bind函数
前言:之前一直不懂这个函数是干嘛的,最近慢慢有点懂了,说一说自己的理解~ 本文按以下3个方面来谈谈bind函数 1)对bind函数的理解: 2)如何使用bind函数 3)自定义bind函数 (http ...
- line-height属性的深入了解
line-height属性的细节与大多数CSS属性不同,line-height支持属性值设置为无单位的数字.有无单位在子元素继承属性时有微妙的不同. 语法line-height: normal | & ...
- 如何正确地在SOE中输出日志信息
ArcGIS for Server提供完善的日志管理机制,用于日志的记录.查询和自动清除.开发人员在开发编写SOE代码时,应该采用该机制进行日志记录的输出.如果不采用该机制,输出的日志消息会写到Arc ...
- 文件路径太长无法删除 robocopy
方法一:新建空文件夹 D:\temp robocopy D:\temp D:\target\source\test /purge 或者在同一目录下,建一个空文件夹, test 在cmd下切换进入到当 ...
- Gulp前端服务器本地搭建
前端服务器本地搭建分三阶段: 1.Node.js的安装 2.Npm环境配置 3.编写JS文件 1.Node.js安装: 如图所示: Next: 选择I accept 然后Next: 选择安装文件的位置 ...
- JUnit测试模块使用
JUnit简介 JUnit是一个Java语言的单元测试框架.它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个. JUn ...
- [翻译] AJProgressPanel
AJProgressPanel Animated progress panel 可做动画的进度条 No images needed, all CoreGraphics code 不需要图片,使用Cor ...
- Mysql常用函数汇总-经典实用
以下是对mysql中的常用函数进行了汇总介绍.需要的朋友可以过来参考下. 一.数学函数ABS(x) 返回x的绝对值BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x ...
- 沉淀,再出发:AngularJS初探
沉淀,再出发:AngularJS初探 一.前言 知识的学习需要形成一个闭环,在这个闭环之内可以自圆其说,从而触类旁通,加以理想创造,从而产生灵感.关于前端的知识,我已经写得差不多了,但是还有一个知识点 ...