【CSS】CSS基本样式修饰

一、Emmet语法

Emmet语法的前身是Zen coding,它使用缩写,来提高html/css的编写速度,VScode内部已经集成这些语法。

1.1 快速生成HTML结构语法

生成标签,直接输入标签名,按tab键即可。比如,div 然后tab键,就可以生成了<div></div>

如果想要生成多个相同的标签,加上 * 就可以了,比如div * 3 就可以快速生成了3个div

如果有父子关系的标签,可以 ul > li就可以了,

如果有兄弟关系的标签,用 + 就可以了,比如 div + p

如果生成带有类名或者id名字,直接写.demo或者 #two tab按键就可以了

如果生成的div类名是有顺序的,可以用自增符号 $

如果想要生成的标签内部写内容可以用{}表示

1.2 快速生成CSS样式  利用tab键

1.3 vscode自动格式化代码

二、CSS的复合选择器

2.1 什么是复合选择器

在CSS中,可以根据选择器的类别分为基础选择器和复合选择器,复合选择器是建立在基础选择器之上的,对基本选择器进行组合处理

复合选择器可以更准确、更高效地选择目标元素

复合选择器是由两个或者多个基础选择器,通过不同的方式组合的

常用的复合选择器包括:后代选择器、子选择器、并集选择器、伪选择器等

2.2 后代选择器

后代选择器又称为包含选择器,可以选择父元素中的子元素,其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。

语法:
元素1   元素2   {  样式声明  }

元素1和元素2中间用空格隔开

元素1是父级,元素2是子级,最终选择的是元素2

元素2可以是儿子,也可以是孙子,只要是元素1的后代即可

元素1和元素2可以是任意选择器

2.3 子选择器

子元素选择器只能选择作为某个元素的最近一级子元素,简单理解就是选亲儿子元素

语法:

元素1> 元素2  {  样式声明  }  // 表示选择元素1里面的所有直接后代元素2

元素1和元素2中间用 > 隔开

元素1是父级,元素2是子级,最终选择的是元素2

元素2一定是元素1的亲儿子,其孙子,重孙子都不归他管,也可以直接叫做亲儿子选择器

2.4 并集选择器

并集选择器可以选择多个标签,同时为他们定义相同的样式,通常用于集体声明

并集选择器是各选择器通过英文逗号连接而成的,任何形式的选择器都可以作为并集选择器的一部分

语法:

元素1,元素2 {  样式声明  }

约定的语法规范:并集选择器喜欢竖着写

2.5 伪类选择器

2.6 链接伪类选择器

链接伪类选择器注意事项:

为了确保生效,请按照 LVHA 的顺序声明::link,:visted,:hover,:active。

因为a链接在浏览器中具有默认样式,所以我们在实际生活中都需要给链接单独指定样式

2.7 focus伪类选择器

focus伪类选择器用于选择获得焦点的表单元素

焦点就是光标,一般情况下<input>类表单元素才能获取,因此这个选择器是针对表单元素的

input:focus

三、CSS的元素显示模式

了解元素的显示模式可以更好的让我们布局页面:

3.1 什么是元素的显示模式

作用:网页的标签非常多,在不同的地方会用到不同类型的标签,了解特点可以更好地布局我们的网页。元素显示模式就是元素(标签)以什么方式显示,比如<div>自己占一行,比如一行可以方多个<span>

HTML元素一般分为块元素和行内元素两种类型。

3.2 块元素

常见的块元素有 <h1>  <h6>  <div>  <p> <ul> <ol>  <li> 

块元素的特点:

比较霸道,自己独占一行

高度、宽度、外边边距以及内边边距都可以进行控制

宽度默认是容器的100%

是一个容器及盒子,里面可以放内行或者块级元素

注意:

文字类的元素内不能使用块级元素

<p>标签主要用于存放文字,因此<p>里面不能放块级元素,特别是不能放<div>

同理,<h1>   <h6>  等都是文字类级标签,里面也不能放其他块级元素

3.3 行内元素

常见的行内元素有 <a>  <strong>  <em>  <i>  <del>  <s> ,<span>标签是最典型的行内元素,

行内元素的特点:

相邻行内元素在一行上,一行可以显示多个

高、宽直接设置是无效的

默认宽度就是他本身内容的宽度

行内元素只能容纳文本或其他行内元素

注意:

链接里面不能再放链接

特殊情况链接 <a> 里面可以放块级元素,但是给 <a> 转换一下块级模式最安全

3.4 行内块元素

<img>  <input>  <td>  

行内块元素的特点:

和相邻行内元素在一行,但是他们之间会有空白缝隙,一行可以显示多个(行内元素特点)

默认宽度就是他本身内容的宽度(行内元素特点)

高度、行高、外边距以及内边距都可以进行过控制(块级元素特点)

3.5 元素显示模式总结

元素模式元素排列设置样式默认宽度包含
块级元素一行只能放一个块级元素可以设置高度和宽度容器的100%容器级可以包含任何标签
行内元素一行可以放多个行内元素不可以设置高度和宽度它本身内容的宽度容纳文本或者其他行内元素
行内块元素一行可以放多个行内块元素可以设置高度和宽度它本身内容的宽度

2.6 元素显示模块的转换

特殊情况下,我们需要元素模式的转换,简单理解,一个模式的元素需要另外一种模式的特性,比如想要增加链接 <a> 触发范围。

display:block  转换为块元素

display:inline 转换为行内元素 

display:inline-block 转换为行内块元素

2.7 一个小工具的使用 snipaste

牛逼,这个软件

2.8 案例

四、CSS的背景

我们可以通过CSS背景属性,可以给页面元素添加背景样式

背景属性可以设置背景颜色,背景图片,背景平铺,背景图片设置,背景图片固定

4.1 背景颜色

background-color 默认是透明的,我们也可以手动写成透明色。

语法:

background-color: transparent; // 一般写成颜色值

4.2 背景图片

background-image属性描述了元素的背景图像,实际开发常见于logo或者一些装饰性的小图片或者是超大的背景图片,优点是非常便于控制位置(精灵图也是一种运用场景)

background-image: url() | none;

4.3 背景平铺

如果需要在HTML页面上对背景图像进行平铺,可以使用background-repeat,默认的情况下背景图片是平铺的,页面元素即可以添加背景图片,也可以添加背景颜色。

4.4 背景图片位置

我们可以使用background-position属性改变图片在背景中的位置。

参数如果是方位名词:

如果指定的两个值都是方位名词,则两个值前后顺序无关

如果只指定一个方位名词,另一个值省略,则第二个值默认居中对齐

参数是精确单位

如果参数是精确单位,那么第一个肯定是x坐标,第二个是y坐标

如果只指定一个数值,那么该数值一定是x坐标,另一个坐标默认垂直居中

参数是混合单位

如果指定的两个值是精确单位和方位名词混合使用,则第一个值是x坐标,第二个值是y坐标

4.5 背景图像固定(背景附着)

background-attachment属性设置背景图像是否固定或者随页面的其余部分滚动

background-attachment后期可以制作视差滚动的效果

background-attachment:scroll | fixed

scroll:背景图像是随对象内容滚动的

fixed:背景图像固定

4.6 背景色半透明

CSS为我们提供了背景颜色半透明的效果

background: rgba(0, 0, 0, 0~1)

最后一个参数是alpha透明度,取值范围在0~1之间

我们习惯把0.3的0省略掉,

注意:背景半透明是指盒子背景半透明,盒子里面的内容不受影响

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

加油,旭杏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值