自学前端(第五天)
1. Emmet语法
1.1快速生成HTML结构语法
1.生成标签 直接输入标签名按tab键即可 比如div 然后tab 键,就可 以生成<div></div>
2.如果想要生成多个相同标签,加上*就可以了 比如div*3
就可以快速生成3个div
3.如果有父子级关系的标签,就可以用> 比如ul>li
就可以了
4.如果有兄弟关系的标签,用+就可以了,比如div+p
5.如果生成带有类命或者id的名字,直接写.demo
或者#two
tab键就可以了
6.如果生成的div类命是有顺序的,可以用自增符号$
2.CSS的复合选择器
后代选择器
后代选择器又称包含选择器,可以选择父元素里面子元素。其写法就是把外层标签写在前面,内层标签卸载后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。
语法:元素1 元素2{样式声明}
例如:
ul li{样式声明}/选择ul里面的所有li标签元素/
元素1和元素2中间用空格隔开
元素1时父级,元素2时子级,最终选择的是元素2
链接伪类选择器
a:link 选择所有未被访问的链接
a:visited 选择所有已被访问的链接
a:hover 选择鼠标指针位于其上的链接
a:active 选择活动链接(鼠标按下未弹起的链接)
focus伪类选择器
:focus伪类选择器用于选择获得焦点的表单元素
焦点就是光标,一般情况<input>
类表单元素才能获取,因此这个选择器 也要针对于表单元素来说。
input:focus{
background-color: purple;
}
复合选择器总结
选择器 作用 使用情况 隔开符号及用法
后代选择器 用来选择后代元素 较多 符号是空格 .nav a
子代选择器 选择最近一级元素 较少 符号是大于 .nav>p
并集选择器 选择某些相同样式的元素 较多 符号是逗号 .nav,.header
链接伪类选择器 选择不同状态的链接 较多 重点记住a{}和a:hover 实际开发的写法
:focus选择器 选择获得光标的表单 较少 input:focus
元素显示模式
什么是元素显示模式:
作用:网页的标签非常多,在不同地方会用到不用类型的标签,了解他们的特点,可以更好的布局我们的网页。
元素显示模式就是元素(标签)以什么方式进行显示,比如<div>
自己独占一行,比如一行可以放多个<span>
html元素一般分为块元素和行内元素两种类型
块元素
常见的块元素有<h1>-<h6>、<p>、<div>、<ul>、<ol>、<li>
等,其中<div>
标签是最典型的块元素
块级元素的特点:
1.自己独占一行
2.高度,宽度,外边距以及内边距都可以控制
3.宽度默认是容器(父级宽度)的100%
4.是一个容器及盒子,里面可以放行内或者块级元素
文字类的元素内不能使用块级元素
<p>标签主要用于存放文字,因此<p>里面不能放块级元素,特别是不能放<div>
同理,<h1>~<h6>等都是文字类块级标签,里面也不能放块级元素
行内元素
常见的行内元素有<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span>
等,其中<span>
标签是最典型的行内元素,有的地方也将行内元素成为内联元素
行内元素的特点:
1.相邻行内元素在一行上,一行可以显示多个
2.高,宽直接设置是无效的
3.默认宽度就是它本身内容的宽度
4.行内元素只能容纳文本或其他行内元素
行内块元素
在行内元素中有几个特殊的标签——<img/>、<input/>、<td>
他们同时具有块元素和行内元素的特点。有些资料称他们为行内块元素。
行内块元素特点:
1.和相邻内元素在一行上,但是他们之间会有空白间隙,一行可以显示多个
2.默认宽度就是它本身内容的宽度
3.告诉,行高,外边距以及内边距都是可以控制
CSS的元素显示模式
元素显示模式转换
特殊情况下,我们需要元素模式的转换,简单理解:一个模式的元素需要另外一种模式的特性,比如想要增加链接<a>
的触发范围。
转换为块元素:display:block
转换为行内元素:display:inline
转换为行内块:display:inline-block