CSS引发的CSS3学习| 青训营笔记

86 阅读3分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天

引言

CSS 作为前端技术栈中关键一环,对页面元素及样式呈现起到了直接作用。通过学习青训营的课程, 我对 CSS 的工作流程及原理、页面中 CSS 使用方法等详细解读、CSS 继承与布局、CSS盒模型有了更深入的了解。

在对CSS有了全面的认知后,我认为也需要对CSS3巩固复习下。CSS3是CSS(层叠样式表)技术的升级版本,具有一些新特性。可以将其大致归类于以下十种。

选择器、文本、边框、背景、渐变、多列布局、过渡、动画与选择、布局、媒体查询。

选择器

  • E:nth-child(n)选择器匹配其父元素的第n个子元素,不论元素类型,n可以使数字,关键字,或公式
  • E:nth-of-type(n)选择与之其匹配的父元素的第N个子元素
  • E:frist-child相对于父级做参考,“所有”子元素的第一个子元素,并且“位置”要对应
  • E:frist-of-type相对于父级做参考,“特定类型”(E)的第一个子元素
  • E:empty选择没有子元素的每个E元素
  • E:target选择当前活动的E元素
  • ::selection选择被用户选取的元素部分
  • 属性选择器
[attribute]用于选取带有指定属性的元素。
[attribute=value]用于选取带有指定属性和值的元素。
[attribute=value]用于选取属性值中包含指定词汇的元素。
[attribute=value]用于选取带有以指定值开头的属性值的元素,该值必须是整个单词。
[attribute=value]匹配属性值以指定值开头的每个元素。
[attribute=value]匹配属性值以指定值结尾的每个元素。
[attribute=value*]匹配属性值中包含指定值的每个元素。

文本

  • text-shadow:2px 2px 8px #000;规定文本阴影
  • text-overflow规定当文本溢出包含元素时发生的事情;
  • text-overflow:ellipsis;省略
  • text-wrap规定文本换行的规则;
  • word-break 规定非中日韩文本的换行规则;
  • word-wrap对长的不可分割的单词进行分割并换行到下一行;
  • white-space规定如何处理元素中的空白;white-space:nowrap 规定段落中的文本不进行换行;

边框

  • border-raduis圆角
  • border-image边框图片

背景

  • 支持rgba
  • backgrounnd-size:cover/contain,其中background-size:cover,会使“最大”边进行缩放,另一边同比缩放,铺满容器,超出部分会溢出。background-size:contain,会使“最小”边进行缩放,另一边同比缩放,不一定铺满容器,会完整显示图片

渐变

  • linear-gradient——background-image:linear-gradient(90deg,yellow 20%,green 80%)
  • radial-gradient——background-iamge:radial-gradient(120px at center center,yellow,green)

多列布局

属性描述CSS
column-count规定元素应该被分隔的列数。3
column-fill规定如何填充列。3
column-gap规定列之间的间隔。3
column-rule设置所有 column-rule-* 属性的简写属性。3
column-rule-color规定列之间规则的颜色。3
column-rule-style规定列之间规则的样式。3
column-rule-width规定列之间规则的宽度。3
column-span规定元素应该横跨的列数。3
column-width规定列的宽度。3
columns规定设置 column-width 和 column-count 的简写属性。3

过渡

属性描述CSS
transition简写属性,用于在一个属性中设置四个过渡属性。3
transition-property规定应用过渡的 CSS 属性的名称。3
transition-duration定义过渡效果花费的时间。默认是 0。3
transition-timing-function规定过渡效果的时间曲线。默认是 "ease"。3
transition-delay规定过渡效果何时开始。默认是 0。3

动画、旋转

布局

Flex 弹性布局

Grid网格布局

@media媒体查询

@media screen and (max-width: 300px) {
    body {
        background-color:lightblue;
    }
}
​
<link rel="stylesheet" media="mediatype and|not|only (media feature)" href="mystylesheet.css">

参考

参考文档-CSDN

参考文档-W3school

参考文档-MDN