×

HTML CSS 基础 知识

HTML 和 CSS 基础知识总结

元智汇电子 元智汇电子 发表于2023-11-27 17:01:42 浏览463 评论0

抢沙发发表评论

行级元素与块级元素的基本区别

行级元素:多个元素占据同一行

  • 行级元素不能设置宽度和高度;

行级元素的标签举例:

  • <span> <a> <input>

块级元素:一个元素占据一行

  • 块级元素可以设置宽度和高度;

块级元素的标签举例:

  • <div> <h1~h6> <p>"


📔常见的CSS选择器

  • 标签选择器:例如,p {}

  • 类选择器:例如,.xxx {}

  • ID选择器:例如,#xxx {}

  • 伪类选择器:例如,:hover

  • 伪元素选择器:例如,::before

  • 子代选择器:例如,#content > li

  • 后代选择器:例如,p span

注意事项:

id 名称必须是唯一的,在页面内不可重复。


CSS知识点整理

📔CSS引入方式

1. 内联样式(优先级最高):

image.png

2. 内部样式:

image.png

3. 外部样式:

image.png

📔CSS超链接样式

  • a:link{}: 未被访问之前的样式

  • a:visited{}: 已被访问过的样式

  • a:hover{}: 鼠标悬停时的样式

  • a:active{}: 在鼠标点击与瞬间释放之间发生的事件时的样式

注意!!!

样式设置时,按照以上顺序设置。


📔选择器优先级

选择器的优先级按照以下顺序:

  1. 内联样式(特殊性最高)。

  2. ID选择器。

  3. 类选择器、伪类选择器。

  4. 标签选择器、伪元素选择器。

!important 规则: 特殊性最高,详细信息请参阅相关文档。

特殊性计算规则:

  • 对于内联样式,特殊性加1000。

  • 对于ID选择器,特殊性加0100。

  • 对于类选择器、属性选择器或伪类,特殊性加0010。

  • 对于元素选择器和伪元素,特殊性加0001。

  • 结合符和通配符选择器对特殊性没有任何贡献,都是0000。

注意!!!

  • 对于相同元素的相同样式,如果权重相同,后面的样式会覆盖前面的样式。

  • 对于相同元素的相同样式,如果权重不同,按照权重大小展示。

  • 不同样式会合并应用。

image.png


标准盒模型与怪异盒模型

📔标准盒模型

在标准模式下,一个块元素的总宽度计算如下:

image.png

总宽度=width+margin(左右)+padding(左右)+border(左右)

📔怪异盒模型(IE盒模型)

在怪异模式下(如IE盒模型),一个块元素的总宽度计算如下:

image.png

总宽度=width+margin(左右)


外边距合并问题

📔相邻块元素垂直外边距的合并

当两个相邻的块元素上下相遇时,它们的垂直外边距(margin)不会简单相加,而是取两者中较大的值。这被称为相邻块元素垂直外边距的合并,有时也称为外边距塌陷。

📔嵌套块元素垂直外边距的合并

在两个嵌套关系的块元素中,如果父元素没有上内边距及边框,那么父元素的上外边距会与子元素的上外边距发生合并。合并后的外边距值为两者中的较大者。即使父元素的上外边距为0,合并仍然会发生。

解决办法

  • 为父元素定义1像素的上边框或上内边距。

  • 为父元素添加 overflow: hidden。

  • 为父元素或子元素设置 float。

  • 为父元素或子元素设置 position: absolute。

这些方法可以有效地防止垂直外边距的合并,确保布局的准确性。


浮动对父元素的影响及解决方案

📔浮动造成的结果:父元素塌陷

当子元素浮动时,父元素可能会发生高度塌陷,导致布局混乱。

解决办法:

  • 父元素设置高度: 明确指定父元素的高度可以防止塌陷,但这种方式不够灵活,不适用于高度不确定的情况。

  • 父元素设置溢出隐藏(overflow: hidden;): 通过设置溢出属性,可以清除浮动,但这会隐藏溢出部分,可能不符合设计需求。

  • 在父元素内添加最后一个子元素,并在该子元素上设置清除浮动(clear: both;): 这种方法在父元素的末尾添加一个额外的子元素,并设置清除浮动,从而保持父元素的高度。

  • 使用clearfix:

image.png

这是一种常见的清除浮动的方法,通过在父元素上应用 clearfix 类,使用伪元素 ::after 清除浮动,确保布局的稳定性。

以上方法可以根据具体情况选择使用,以解决浮动对父元素造成的影响。


📔实现元素水平居中

对于块级元素,可以使用如下样式将其水平居中:

image.png

这种方式利用了 margin 属性的 auto 值,使左右外边距相等,从而实现水平居中。

📔实现单行文本垂直水平居中

如果要使单行文本在容器内垂直水平居中,可以使用以下样式:

image.png

这里设置了容器的宽度和高度,通过 line-height 使文本在垂直方向上居中,同时使用 text-align: center; 使文本在水平方向上居中。

📔实现块级元素垂直居中

要使块级元素垂直居中,可以使用如下样式:

image.png

通过设置容器的高度和行高,以及 vertical-align: middle; 属性,实现了块级元素在垂直方向上的居中。



📔常见的position及特点

在CSS中,position 属性用于指定元素的定位方式。以下是常见的取值及其特点:

1. static(静态):

  • 默认值,元素出现在正常的文档流中。

  • 不受 top、bottom、left、right 属性的影响。

2. relative(相对):

  • 相对定位。

  • 不脱离文档流的布局,受 top、bottom、left、right 属性的影响。

  • 只改变自身的位置,在文档流原先的位置留下空白区域。

  • 定位的起始位置为此元素原先在文档流的位置。

3. absolute(绝对):

  • 绝对定位。

  • 脱离文档流的布局,遗留下来的空间由后面的元素填充。

  • 定位的起始位置为最近的父元素(position 不为 static),否则为 HTML 文档本身。

  • z-index 属性可用于设置层级关系。

4. fixed(固定):

  • 固定定位。

  • 类似于 absolute,但不随着滚动条的移动而改变位置。

  • 元素的位置相对于浏览器窗口是固定的。

  • 随着元素固定在窗口中,释放了空间。

注意:使用 absolute 定位时,定位的基准是最近定位的父元素,如果没有则相对于整个 HTML 文档。定位后可通过 z-index 设置层级关系。


群贤毕至

访客