CSS学习笔记

CSS

1.概念

CSS(层叠样式表)是一种用来描述文档如何呈现在屏幕、打印等上的语言。通过使用CSS,我们可以将HTML标记与外观和布局分离。

2.CSS 引入方式

  • 外部样式表: 在head标签中加入标签,href属性指向外部css文件。
  • 内部样式表:在head标签中使用

3.选择器

基础选择器

  • 标签选择器:选择相应标签的元素,如div、p等
  • 类选择器:选择指定class属性值的所有元素,如 .example
  • id选择器:选择指定id属性值的唯一元素,如 #example
  • 通配符选择器:选择所有元素,如 *

复合选择器

  • 后代选择器:选择某个元素下的所有后代元素,如 div p
  • 子代选择器:选择某个元素下的直接子元素,如 ul > li
  • 并集选择器:选择多个元素,如 h1, h2, h3
  • 交集选择器:选择同时拥有两种或多种不同属性的元素,如 a.classA.classB
  • 伪类选择器:根据元素所处状态或信息选择元素,如 :hover等

选择器的优先级

样式规则根据"优先级"来决定作用于HTML元素上的CSS属性。当多个规则应用于同一元素时,优先级就决定了哪个规则将胜出。

4.盒子模型

  • 盒子模型-边框线: CSS盒子模型包括:内容区域、内边距区域、边框区域和外边距区域。
  • 盒子模型-padding: 盒子内边距区域的四个方向分别是上、右、下、左,使用padding属性设置。
  • 盒子模型-外边距: 盒子外边距区域的四个方向也是上、右、下、左,使用margin属性设置。
  • 外边距问题-合并现象: 当两个盒子相遇时,它们的外边距会合并为一个外边距,这种现象称为外边距合并。
  • 外边距问题-塌陷问题: 当父元素的上边距和子元素的上边距重合时,会发生外边距塌陷的现象。
  • 行内元素-内外边距问题: 行内元素没有内边距和外边距,使用line-height属性撑开行高。
  • 盒子模型-尺寸计算: 盒子的总宽度 = 左边框 + 左内边距 + 内容区域 + 右内边距 + 右边框,盒子的总高度 = 上边框 + 上内边距 + 内容区域 + 下内边距 + 下边框。
  • 盒子模型-元素溢出: 如果元素溢出了,可以通过overflow属性来控制。
  • 盒子模型-圆角: 使用border-radius属性设置盒子四个角的圆角效果。
  • 盒子模型-阴影(拓展): 使用box-shadow属性在盒子周围添加阴影。

5.字体修饰属性

CSS提供多种修改字体样式的属性,如font-size、font-weight、font-style等等。

6.调试工具

调试工具是帮助我们排错和调试CSS样式的利器,常用的调试工具有Chrome开发者工具、Firebug、Safari的Web Inspector等。

7.CSS特性

  • 继承性:如果一个元素没有指定某个CSS属性,那么它将从它的父元素继承这个属性。
  • 层叠性:如果一个元素同时被多个样式规则所定义,那么它将按照一定规则来决定哪条规则的优先级更高。
  • 优先级:在层叠性相同的情况下,根据选择器的优先级来确定哪个样式规则更重要。

8.背景属性

CSS提供了多种背景样式设置,如background-color、background-image等。渐变可以通过linear-gradient或radial-gradient来实现。

9.显示模式

CSS提供了多种显示模式,如块级元素、行内元素和行内块级元素。可以通过display属性进行设置。

10.清除默认样式

使用reset.css清除默认样式,并将其设置为一个css文件。

11.CSS 书写顺序

一般按照盒子模型的顺序来书写CSS样式,如先写边框、内边距、尺寸等等。

12.标准流

标准流是指文档内容默认的布局方式,包括块级元素和行内元素的默认布局方式。

13.浮动

CSS提供了float属性来实现元素浮动。为了防止浮动元素对其他元素的影响,需要清除浮动。

清除浮动

  • 方法一:额外标签法
  • 方法二:单伪元素法
  • 方法三:双伪元素法(推荐)
  • 方法四:overflow

14.flex布局

Flex(Flexible Box)布局是一种高效的布局方式,能够快速应对多种屏幕尺寸。Flex布局包括容器和成员两个概念。

15.网页设计技巧

  • 清除默认样式,并将其设置为一个css文件。
  • 设置版心区域。
  • logo的设置。
  • 导航制作技巧。
  • 搜索区域。
  • img+span。

16.定位

CSS提供了多种定位方式,包括相对定位、绝对定位和固定定位。使用z-index属性可以设置堆叠层级。

17.CSS 精灵

CSS精灵是指将多个小图标合并成一张大图并通过background-position的方式来显示相应小图标。

18.字体图标

字体图标是用字体文件来实现的图标,可以通过下载相应字体库来使用。在HTML中只需要添加对应的class即可插入字体图标。

19.垂直对齐方式

CSS提供了vertical-align属性来实现元素的垂直对齐。

20.过渡 transition

过渡效果(Transition)是指在元素从一种样式逐渐变化为另一种样式过程中的动画效果。可以通过CSS的transition属性来实现。

21.透明度 opacity

CSS提供了opacity属性来设置元素的透明度。

22.光标类型 cursor

CSS提供了cursor属性来设置鼠标悬停在元素上时的光标类型。

23.SEO 三大标签

SEO(Search Engine Optimization)是指优化网页以便于搜索引擎更好地理解和分类内容。其中三个非常重要的标签是、和<h1>。</h1>

24.Favicon 图标

Favicon图标是指网站在浏览器地址栏、标签页等处显示的小图标。

25.input注意点

在使用input元素时,需要注意一些属性设置,如type、name、value、placeholder等。

26.平面转换 transform

CSS提供了多种平面转换效果,包括平移、旋转、缩放和倾斜等。

27.空间转换

CSS提供了空间转换(3D效果)效果,包括平移、旋转和缩放等。

28.动画-animation

动画是指可以通过CSS来实现的元素动画效果。CSS的animation属性可以实现多组动画。

相关推荐
黑叶白树2 小时前
简单的签到程序 python笔记
笔记·python
@小博的博客2 小时前
C++初阶学习第十弹——深入讲解vector的迭代器失效
数据结构·c++·学习
幸运超级加倍~3 小时前
软件设计师-上午题-15 计算机网络(5分)
笔记·计算机网络
南宫生3 小时前
贪心算法习题其四【力扣】【算法学习day.21】
学习·算法·leetcode·链表·贪心算法
懒惰才能让科技进步3 小时前
从零学习大模型(十二)-----基于梯度的重要性剪枝(Gradient-based Pruning)
人工智能·深度学习·学习·算法·chatgpt·transformer·剪枝
love_and_hope4 小时前
Pytorch学习--神经网络--搭建小实战(手撕CIFAR 10 model structure)和 Sequential 的使用
人工智能·pytorch·python·深度学习·学习
Chef_Chen4 小时前
从0开始学习机器学习--Day14--如何优化神经网络的代价函数
神经网络·学习·机器学习
芊寻(嵌入式)4 小时前
C转C++学习笔记--基础知识摘录总结
开发语言·c++·笔记·学习
准橙考典4 小时前
怎么能更好的通过驾考呢?
人工智能·笔记·自动驾驶·汽车·学习方法
hong1616884 小时前
跨模态对齐与跨领域学习
学习