跟随黑马学前端-6,CSS简介
Joker2Yue第六天:CSS简介
Intelligence is the ability to avoid doing work, yet getting the work done.
学习目标
-
Emmet语法
-
CSS的复合选择器
-
CSS的元素显示方式
-
CSS的背景
-
CSS的三大特性
-
CSS的注释
Emmet语法
Emmet语法的前身是Zen Coding,它使用缩写,来提高HTML/CSS的缩写速度,VSCode内已经集成该语法
-
快速生成HTML结构语法
-
快速生成CSS样式语法
快速生成HTML结构语法
-
生成标签 直接输入标签名,按下tab即可,比如div然后按下tab键就可以直接生成
<div></div>
-
如果想要生成多个相同的标签,加上
*
就可以了,比如div*3就可以直接生成3个div -
如果有父子级关系的标签,可以用>比如
ul>li
就可以了 -
如果有兄弟关系的标签,用+就可以,比如
div+p
-
如果生成带有类名或者id名字的,直接写
.demo
或者#two
然后tab键就可以了1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16<!-- 这是一个示例 -->
<!-- 输入的是 .one -->
<div class="one"></div>
<!-- 输入的是 #two -->
<div id="two"></div>
<!-- 输入的是 p.one -->
<p class="one"></p>
<!-- 输入的是 .demo$*5 -->
<div class="demo1"></div>
<div class="demo2"></div>
<div class="demo3"></div>
<div class="demo4"></div>
<div class="demo5"></div> -
如果生成的div类名是有顺序的,可用自增符号
$
-
如果我们想要生成的标签中自带文字,我们可以这样:
1
2<!-- div{周杰伦} -->
<div>周杰伦</div>
快速格式化代码
快捷键:SHIFT+ALT+F(VSCode)
自动格式化代码:
-
文件->【首选项】->【设置】
-
搜索emmet.include;
-
在settings.json下的【用户】中添加:
“editor.formatOnType”:true,
“editor.formatOnSave”:ture
-
只需要设置一次即可
复合选择器
什么是复合选择器:
在CSS中,可以根据选择器的类型将选择器分为基础选择器和复合选择器,复合选择器是建立在基础选择器之上的,对基本选择器进行组合形成的
-
复合选择器可以更加精准的更加高效的选择目标元素(标签)
-
复合选择器是由两个或者多个选择器通过不同的方式组合而成的
-
常用的复合选择器包括:后代选择器、子选择器、并集选择器、伪装选择器等
后代选择器(重要)
后代选择器又叫做包含选择器,可以选择父元素里面的子元素,其写法是将外层标签写在前面,内层标签写在后面,中间用空格分隔开,当标签发生嵌套时,内层标签就成为外层标签的后代
1 |
|
子选择器
子元素选择器:只能选择作为某元素的最近一级子元素,简单理解就是选亲儿子元素
语法:
1 | 元素1 > 元素2 { |
上述语法表示选择元素1 中的所有直接后代(子元素)元素2
例如:
1 | div > p{ |
-
元素1 和 元素2 中间用大于号分隔开
-
元素1 是父级,元素2 是子级。最终选择的是元素2
-
元素2 必须是元素1 的亲儿子,其孙子、重孙子之类都不会管
后代选择器和子选择器的区别
-
后代选择器会选中指定标签中, 所有的特定后代标签, 也就是会选中儿子/孙子…, 只要是被放到指定标签中的特 定标签都会被选中
-
子元素选择器只会选中指定标签中, 所有的特定的直接标签, 也就是只会选中特定的儿子标签。
并集选择器
并集选择器可以选择多组标签,并为他们定义相同的样式,适用于集体声明
语法:
1 | 元素1, 元素2{ |
并集选择器是通过英文符号进行分割的,任何形式的选择器都可以作为并集选择器的一部分
1 |
|
伪类选择器
伪类选择器可以用于向某些选择器中添加特殊的效果,比如给链接添加特殊效果,或选择第一个,第n个元素
伪类选择器书写最大的特点就是用冒号:
来表示,比如:hover
、:first-child
伪类选择器很多,比如:链接伪类、结构伪类等
链接伪类选择器
1 | a:link /* 选择所有未被访问的链接*/ |
1 |
|
:focus伪类选择器
:focus
伪类选择器用于选取获得焦点的表单元素
焦点就是光标,一般情况<input>
类表单元素才能获取,因此这个选择器也主要针对于表单元素来说
语法:
1 | input:focus{ |
总结
选择器 | 作用 | 特征 | 使用情况 | 隔开符号及用法 |
---|---|---|---|---|
后代选择器 | 用来选择后代元素 | 可以是子孙后代 | 较多 | 符号是空格.nav a |
子代选择器 | 选择最近一级元素 | 只选择亲儿子 | 较少 | 符号是大于号.nav>p |
并集选择器 | 选择某些相同样式的元素 | 可以用于集体声明 | 较多 | 符号是逗号.nav,header |
链接伪类选择器 | 选择不同的链接 | 跟链接相关 | 较多 | 重点记住a[]和a:hover实际开发的写法 |
:focus选择器 | 选择获得光标的表单 | 跟表单相关 | 较少 | input:focus 记住这个写法 |