云计算百科
云计算领域专业知识百科平台

前端css学习笔记1:css概述

本文为个人学习总结,如有谬误欢迎指正。前端知识众多,后续将继续记录其他知识点!

目录

前言

一、介绍

1.基本功能

2.css编写位置

行内样式

内部样式

外部样式(推荐)

3.样式表的优先级

4.选择器优先级

权重计算

​编辑

二、三大特性

1.层叠性

2.继承性

3.优先级

三、样式的继承

四、默认样式

重置默认样式


前言

在网页开发的世界里,HTML 搭建起了页面的骨架,而 CSS(层叠样式表)则赋予了这些骨架鲜活的 “外衣”—— 从文字的颜色、大小,到元素的布局、间距,都离不开 CSS 的精心修饰。本文将围绕 CSS 的基础内容展开,从样式的编写位置、优先级规则,到三大特性的深层逻辑,再到样式的继承与默认样式的处理,希望这份笔记能为同样正在学习CSS的同学提供参考,也欢迎大家结合原课程视频深入学习,共同进步。

网课链接: https://www.bilibili.com/video/BV1p84y1P7Z5/?share_source=copy_web&vd_source=faad59aa4025692c65fca19bc4320e39


一、介绍

1.基本功能

css是一种层叠样式表,HTML搭建结构,css添加样式

2.css编写位置

行内样式

  • 写在标签中,使用style属性
  • style属性的值,是名:值 的形式,多个值用空格隔开

<!– 行内样式(不推荐) –>
<h1 style="color: brown; font-size: 30px;">欢迎学习前端</h1>

内部样式

  • 使用style标签,可以放在body标签或者head标签内(一般),将所有的css代码提出来,放在style标签中(html页面中style标签中写的是css代码)
  • css中涉及到宽高,要写单位px,不能省略
  • style标签中,包含要修饰的标签名(使用花括号),但是不能包括html代码
  • 写在本html页面内,其他html页面不能复用

<head>
<meta charset="UTF-8">
<title>编写位置</title>
<style>
h1{
color: blue;
font-size: 40px;
}
</style>
</head>
<body>
<h1>欢迎学习前端</h1>
</body>

外部样式(推荐)

  • 单独写在css文件中,之后在html文件中引用
  • 将style标签的内容(不包括style标签),复制到css文件内

  • 在head标签写link标签,href属性链接css文件;
  • href属性 表示引入文档的位置
  • rel(relation):表示引入文档与当前文档的关系。stylesheet(导入样式表)
    • 优点:样式可以复用、结构清晰、可触发浏览器的缓存机制,提高访问速度,实现了结构与样式的完全分离,可用于多个html页面

    3.样式表的优先级

    行内样式优先级>内部样式=外部样式(后来者居上)

    对于同一个属性

    • 行内样式优先级最高

    • 内部样式和外部样式优先级一样

      • 呈现效果:后来者居上,后面的样式把前面的样式“覆盖”了

    对于不同属性

    • 哪个样式规定了就按照哪个来

    同一个样式表(对于单一的某个样式)

    • 优先级与编写顺序有关,后面的会覆盖前面的

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
    h1{
    color: brown;
    }
    </style>
    </head>
    <body>
    <h1 style="color: blue;">欢迎学习前端</h1>

    <!– 行内样式优先级>内部样式 –>
    </body>
    </html>

    4.选择器优先级

    !important(慎用)>行内样式>ID选择器>类选择器/伪类选择器/属性选择器>元素选择器/伪元素选择器>通配选择器>继承的样式

    通过不同的选择器,选中相同的元素,并且为相同的样式名设置不同的值时,就发生了样式的冲突。到底应用哪个样式,此时就需要看优先级了.

    优先级越高,即使写在后面,也不会被覆盖

    同级或者同一种选择器——后来者居上,后面的样式把前面的样式“覆盖”了


    权重计算

    1.计算方式:每个选择器,都可计算出一组权重,格式为:(a,b,c)

    • a:ID选择器的个数。
    • b:类、伪类、属性选择器的个数。
    • c:元素、伪元素选择器的个数

    或者——直接加

    2.比较规则:按照从左到右的顺序,依次比较大小,当前位胜出后,后面的不再对比

    • 全部相同——后来者居上

    • 通配选择器:权重(0,0,0)

    3.特殊规则:

    • 行内样式权重大于所有选择器。
    • !important的权重,大于行内样式,大于所有选择器,权重最高!
      • !important不是写在某个选择器上,写在某个属性值之后
      • !important慎用
    • 并集选择器的每一个部分是分开算的!

    第一个:(0,2,1)—2个类选择器,1个元素选择器

    第二个:(0,1,3)—1个伪类选择器,3个元素选择器

    二、三大特性

    1.层叠性

    概念:如果发生了样式冲突,那就会根据一定的规则(选择器优先级),进行样式的层叠(覆盖)。

    • 样式冲突?:元素的同一个样式名,被设置了不同的值

    2.继承性

    概念:元素会自动拥有其父元素、或其祖先元素上所设置的某些样式。

    规则:优先继承离得近的。

    常见的可继承属性:

    • text-??,font-??,line-??、color。。

    3.优先级

    简单聊:!important>行内样式>ID选择器>类选择器>元素选择器>通配选择器>继承的样式。

    详细聊:需要计算权重(见前面的三四部分)。

    三、样式的继承

    能继承的属性,都是不影响布局的,简单说:都是和盒子模型没关系的。

    有些样式会继承,元素如果本身设置了某个样式,就使用本身设置的样式;但如果本身没有设置某个样式,会从父元素开始一级一级继承(优先继承离得近的祖先元素)。

    会继承的样式:

    • 字体属性、文本属性(除了vertical-align)、文字颜色等。

    不会继承的样式:

    • 边框、背景、内边距、外边距、宽高、溢出方式等。

    四、默认样式

    元素的默认样式>继承的样式

    元素一般都有一些默认的样式,

    例如:

    1.<a>元素:下划线、字体颜色、鼠标小手。

    2.<h1>~<h6>元素:文字加粗、文字大小、上下外边距。

    3.<p>元素:上下外边距

    4.<ul>、ol元素:左内边距

    5.body元素:8px 外边距(4个方向)。。。

    注意:

    • 优先级:元素的默认样式>继承的样式,以如果要重置元素的默认样式,选择器一定要直接选择器到该元素
    • 默认样式不用记,写代码第一件事就是重置默认样式,例如给body加样式,把正文所有内容使用div包裹,选中这个div,设置样式

    margin: 0

    ◦ 移除元素外部的所有边距,使元素紧贴其父容器或相邻元素(无间隔)。

    padding: 0

    • 移除元素内部的所有填充,使内容(如文本、子元素)紧贴元素的边框。

    应用:

    导航菜单

    • 移除 <ul> 的默认 padding-left 和 margin,使菜单项紧密排列,便于横向布局。

    重置默认样式

    • 浏览器对某些元素(如 <body>、<ul>、<p>)有默认的 margin 或 padding,设为 0 可以统一样式,方便自定义设计。

    继承样式优先级低,不能覆盖元素默认样式

    重置默认样式

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 前端css学习笔记1:css概述
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!