【CSS】重点知识梳理,这样上手无压力

news2025/2/21 20:47:35

推荐前端学习路线如下:

HTML、CSS、JavaScript、noodJS、组件库、JQuery、前端框架(Vue、React)、微信小程序和uniapp、TypeScript、webpack 和 vite、Vue 和 React 码源、NextJS、React Native、后端内容。。。。。。

CSS定义:

css:层叠样式表,英文全名:cascading style sheets ,WEB 标准中的表现标准语言,简单说就是如何修饰网页信息的显示样式;

目前推荐遵循的是W3C发布的CSS3.0.

1998年5月21日由w3C正式推出的css2.0

CSS语法:

选择器(又称为选择符){属性:属性值;属性:属性值;}

选择符表示要定义样式的对象,可以是元素本身,也可以是一类元素或者制定名称的元素.

属性:属性是指定元素所具有的属性,它是css的核心,css2共有150多个属性

属性值:属性值包括法定属性值及常见的数值加单位,如25px,或颜色值等。

CSS的引入方式:

-内部样式

-外部样式

-行内样式

内部样式的创建方式:

1、结构创建对象

2、在head里面书写标签style

注:使用style标记创建样式时,最好将该标记写在<head></head>;

<style type="text/css">
/*css语句*/
</style>

外部样式引入:

1、创建对象

2、新建一个CSS文件

3、利用link或者import引入CSS文件

<link rel="stylesheet" href="CSS文件的路径">

relation:用于定义文档关联

stylesheet:样式表

<style type="text/css">
@import url(目标文件的路径及文件名全称);
</style>

注:@和import之间没有空格 url和小括号之间也没有空格;必须结尾以分号结束;

引入外部样式表link和import之间的区别

差别1:本质的差别:

link属于XHTML标签,而@import完全是CSS提供的一种方式。

差别2:加载顺序的差别:

当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加载,而@import引用的CSS会等到页面全部被下载完再被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式(就是闪烁),网速慢的时候还挺明显。

差别3:兼容性的差别:

@import是CSS2.1提出的,所以老的浏览器不支持,@import只有在IE5以上的才能识别,而link标签无此问题。

差别4:使用dom(document object model文档对象模型 )控制样式时的差别:

当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的.

行内样式

行内样式 又称为(行间样式、内联样式,嵌入式样式、内嵌样式)

语法:<标签 style="属性:属性值;属性:属性值;"></标签>

例:

<div style="width:500px; height:200px;"></div>

样式表的优先级

A、行内样式表的优先级别最高

B、内部样式表与外部样式表的优先级和书写的顺序有关,后书写的优先级别高。就近原则(哪个CSS样式距离标签近显示哪个)

C、作用域:内联样式的作用域最小,只能应用于当前元素,其次是内部样式表,能应用于当前HTML文件,最后是外部样式表,能应用于所有链接的HTML文件。

样式表的权重

行内样式>内部样式>外部样式

CSS选择器整体分为5大类:

1、基本选择器

2、层次选择器

3、伪类选择器

4、属性选择器

5、伪对象(伪元素)选择器

基本选择器分类

1、类型选择器(标签选择器)

2、Class选择器(类选择器)

3、ID选择器

4、通配符

5、群组选择器

类型选择器(标签选择器)

-使用场景:

 想要改变某个元素的默认样式或者统一文档某个元素的显示效果时

-语法:

 标签{属性:属性值;}  例如:div{width:200px;}

Class选择器(类选择器)

-使用场景:

 想要区分某个或者某些标签时,比如想要区分2个div

-语法:

 .Class名字{属性:属性值;}  例如:.box{width:300px}

 *Class可以给多个属性值,多个属性值之间用空格隔开。例如: <div class="box a1 a3">

 class属性值的注意点:

 1、不能纯数字开头

 2、不建议使用中文,因为容易造成乱码。

 3、如果需要符号配合,可以使用-或者_,其他符号不可以

 4、建议命名的时候,采用语义化命名

 box 盒子  head 头部  foot 尾部


ID选择器

-使用场景:

 想要区分某个或者某些标签的时,比如想要区分2个div

-语法:

 #id名字{属性:属性值;}  例如: #box{width:300px;}

 注意点:ID具有唯一性,属性值只能是1个

通配符

-使用场景:

 想让所有的标签同时改变样式的时候

-语法:

 *{属性:属性值;}  例如:

*{color:red;}

例如:全局声明div的边框外部和元素距离为0

(快捷键:m0+p0  回车)

*{

    margin:0;

    padding:0;

}

群组选择器

-使用场景:

 当几个元素样式一样时,可以共同调用一个声明,元素之间用逗号分隔

-语法:

 选择器1,选择器2,选择器3{属性:属性值;}

 例如:

.box,p,#a2{width:300px;}

CSS选择器权重

1、类型(元素)选择器(标签选择器)    0001

2、Class选择器(类选择器)            0010

3、ID选择器                          0100

3、行内样式                          1000

行内>内部>外部

ID > class > 标签

CSS选择器的解析规则

1、当不同选择符的样式设置有冲突的时候,高权重选择符的样式会覆盖低权重选择符的样式。

2、相同权重的选择符,样式遵循就近原则,哪个选择符嘴壶定义,就采用哪个选择符样式。


 

CSS属性

font-size:;    字体大小

px     像素

em     父元素的一个字体大小

rem    根元素的一个字体大小

font-family:;  字体

color:;   颜色

英文单词

rgb(123,0,0)    0~255

rgba(123,0,0.5)    最后的0-1表示透明到不透明

#FEF6RF    十六进制   0-9  a-f

font-weight:;   文字加粗

例:font-weight: normal;   取消加粗,常规常规显示

-bold       加粗

-bolder     更粗

-lighter    变细

-100-900    100-300  400-500  600-900

font-style:;   文本倾斜

例:font-style: normal;     取消倾斜,常规显示

-litalic  倾斜

-oblique  倾斜

text-align:;  水平对齐方式

text-align:;  水平对齐方式(只针对文本或图片)

例:text-align:left;       左对齐

-right     右对齐

-center    居中对齐

-justify   两端对齐(部分浏览器中对于中文不起作用)


vertical-algin:;  垂直对齐方式

例:vertical-algin:top;    上对齐

bottom     下对齐

middle     居中对齐

baseline   基线对齐

text-decoration:;   文本修饰

例:text-decoration:none;     没有修饰,取消下滑线

-underline    添加下划线

-overline     添加上划线

-line-through    添加删除线

text-indent:value;   首行缩进

例:text-indent:2em;

    text-indent:10px;

-可以取负值,而且只对第一行起作用。对行内元素不起作用。

text-transform:;   控制字母大小写

letter-spacing:value;  字间距

-控制英文字母和汉字的字距

word-spacing:value;   词间距

-控制英文单词词距

font:bolder italic 12px/1.5em "宋体";    文字属性简写


 

list-style:;    列表样式

例:list-style:none;      清空列表样式

-list-style-type:;        circle square none disc  定义列表符号样式

-list-style-image:url();   使用图片作为列表符号

-list-style-position:;   outside    inside  定义列表符号的位置

border:1px solid #ddd; 边框

-border-top:;      顶边框

-border-bottom:;   底

-border-right:;    右

-border-left:;     左

-border-width:;    宽

-border-style:;    样式   solid dashed dotted

-border-color:;    颜色

例:显示一个三角

div{
    width:0px;
    height: 0px;
    border-top:20px solid transparent;
    border-bottom:20px solid transparent;
    border-left:20px solid rgb(231, 69, 96);
    border-right:20px solid transparent;
}

float:;浮动属性(半脱离标准文档流)

例:float:left;    左浮动,从左往右显示

-right  右浮动,从右向左显示

-none   默认

1、一个浮动的元素 会对后面的元素造成影响

2、子元素浮动 父元素宽度小于子元素宽度之和时,后面的元素会被挤下去

3、如果浮动元素中有一个高度不一致 会影响下一行浮动元素正常显示  被卡住

4、子元素浮动  父元素的高度为0

-解决方法:在父元素中 所有浮动的子元素后面添加空元素(块)  为该元素添加  clear:both

clear:; 清除浮动

例:clear:left;    清除左浮动元素带来的影响

-right             清除右浮动元素带来的影响

-both(最常用)       清除上面所有浮动元素带来的影响

background背景

-background-color:;  背景颜色

-background-image:url(背景图片的路径及全称);  背景图片的设置

-background-repeat:;        背景图片平铺属

  no-repeat    不平铺  

  repeat       平铺

  repeat-x     X轴平铺

  repeat-y     Y轴平铺

background-position:x轴 y轴            背景图的位置

 例:

 background-position:10px 20px;

 background-position:30% 20%;

 background-position:top center;

banckground-attachment:;   fixed(固定)  scroll(滚动-默认)   背景图的固定

盒模型

宽 高边框  内边距   外边距
 

padding:;内边距

例:padding:100px 30px 40px 20px;

一个值  一圈相等

两个值    上下  左右

三个值    上  左右   下

四个值    上右下左   顺时针顺序

  1. padding-top:;  
  2. padding-right:;
  3. padding-bottom:;
  4. padding-left:;

注意: 内边距添加后 会加到原来总宽高上

margin:;    外边距( 元素到元素)

例:margin:100px 30px 40px 20px;

一个值  一圈相等

两个值    上下  左右

三个值    上  左右   下

四个值    上右下左   顺时针顺序

* 左右相加,上下重叠(取最大值)

左右相邻的两个元素,左右相邻的外边距要相加

上下相邻的两个元素,上下相邻的外边距会重叠,外边距要取两者的最大值。

margin: 0 auto;     (浮动的时候不起作用)

在该元素有宽度的情况下,会在父元素的夸宽度中居中显示。

为子元素添加margin-top时 会连带着父元素一起下来

解决方法:

1、为父元素添加padding-top代替

2、为父元素或该元素浮动

3.为父元素添加边框

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/43416.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker入门到精通一文搞定

文章目录前言一、Docker概述1.Docker为什么会出现&#xff1f;2.Docker相比VM技术3.Docker 能做什么&#xff1f;3.1 比较Docker和虚拟机技术的不同&#xff1a;3.2 DevOps (开发、运维)&#xff1a;4个特点二、Docker安装1.dokcer架构图&#xff1a;2.Docker基本组成&#xff…

python+django体质测试数据分析及可视化设计

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 B/S架构 4 本选题则旨在通过标签分类管理等方式&#xff0c;实现管理员&#xff1a;管理员&#xff1a;首页、个…

11.前端笔记-CSS盒子模型-外边距margin

1、margin 1.1 margin的语法 盒子与盒子之间的距离 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewpor…

linux 系统的磁盘 mbr 转gpt方法

linux磁盘用fdisk格式化挂盘的格式都为mbr, 不支持大于2T的磁盘扩容&#xff0c;需要用parted转化。 查询磁盘格式 输入&#xff1a; fdisk -l 看Disk label type 的值&#xff0c;是dos 的为mbr 是gpt的为gpt 当前&#xff0c;因挂盘时&#xff0c;用的fdisk方式选gpt,挂…

基于STM32的u8g2移植以及学习

实验硬件&#xff1a;STM32F103C8T6&#xff1b;0.96寸OLED&#xff08;12864&#xff09; U8g2库开源网址&#xff1a;https://github.com/olikraus/u8g2 一、u8g2库知识 1.1 什么是u8g2&#xff1f; U8g2是嵌入式设备的单色图形库。主要应用于嵌入式设备&#xff0c;包括我…

正大国际期货:投资外盘期货如何运用K线图中十字星形态?

很多人都明白&#xff0c;做外盘期货需要学会看线图。那么K线图上面的一根两根的柱子代表的什么意思呢&#xff1f;其中星星点点的十字星又是什么意思&#xff1f;下面正大IxxxuanI详细给大家讲解一下&#xff01; 1、什么是多头十字星形态&#xff1f; 多头十字星是一种经典…

KEITHLEY 吉时利2601B源表产品技术参数

KEITHLEY 2601B 吉时利 2601B 源表让您可以比以前更快、更轻松、更经济地进行精密直流、脉冲和低频交流源测量测试。Keithley 2601B 通过结合以下特性&#xff0c;为 IV 功能测试提供竞争产品 2 到 4 倍的测试速度&#xff1a; 吉时利的高速第三代源测量单元 (SMU) 设计 嵌…

【Python】八、函数的使用

文章目录实验目的一、定义函数二、调用函数三、参数的传递和函数的返回值四、编写函数&#xff0c;输入不同的参数&#xff0c;绘制不同的科赫曲线参考代码实验截图实验目的 掌握函数的定义和调用&#xff1b;掌握函数的用法&#xff1b;理解递归&#xff1b;培养学生动手查阅资…

开源:分享4个非常经典的CMS开源项目

❤️作者主页&#xff1a;IT技术分享社区 ❤️作者简介&#xff1a;大家好,我是IT技术分享社区的博主&#xff0c;从事C#、Java开发九年&#xff0c;对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉&#xff1a; 数据库领域优质创作者&#x1f3c6;&#x…

Spark系列之Spark安装部署

title: Spark系列 第二章 Spark安装部署 2.1 版本选择 下载地址&#xff1a; https://archive.apache.org/dist/spark 四大主要版本 Spark-0.X Spark-1.X&#xff08;主要Spark-1.3和Spark-1.6&#xff09; Spark-2.X&#xff08;最新Spark-2.4.8&#xff09; Spark-3.x&a…

降级、熔断和限流———一看就会

设定&#xff1a;A上游系统、B本系统、C下游系统 服务降级 服务降级是从整个系统B的负荷情况出发和考虑的&#xff0c;对某些负荷会比较高的情况&#xff0c;为了预防某些功能&#xff08;业务场景&#xff09;出现负荷过载或者响应慢的情况&#xff0c;在B其内部暂时舍弃对一…

【Mybatis编程:统计相册表中的数据的数量】

目录 1. 书写SQL语句 2.在AlbumMapper.java接口中添加抽象方法 3. 在AlbumMapper.xml中配置SQL语句 4. 在AlbumMapperTests.java中编写并执行测试 1. 书写SQL语句 需要执行的SQL语句大致是&#xff1a; select count(*) from pms_album 在设计抽象方法时&#xff0c;如果要…

【三维重建补充知识-0】视差、深度概念及其转换

一、基本概念 把手指放在眼前&#xff0c;分别闭上左、右眼&#xff0c;我们会发现手指与后边物体的相对位置是不同的&#xff0c;也即两眼所识别的两幅图像之间存在视觉差异&#xff0c;我们通过“视差”这一概念来表示这种差别。 该过程也可以通过两个处于同一平面的相机来模…

Ajax学习:Ajax请求基本操作

点击按钮&#xff0c;发送请求&#xff08;前端页面和服务端页面信息交流 但是不刷新页面&#xff09; 注意使用谷歌浏览器 服务器端打开&#xff1a;使用nodemon //1、导入express const expressrequire(express) //2、创建应用对象 创建web服务器 const appexpress() //3、…

软考高级系统架构师_计算机组成与结构02_高速缓存_磁盘结构_输入输出技术_总线结构_可靠性_---软考高级系统架构师005

1.Cache是Cpu与主存储器之间的速度比主存储器要块10倍左右,因为cpu用的说主存储器中的地址, 而cpu速度很快,主存储器速度慢,所以中间加了这个cache,那么这里就涉及到,怎么把cache地址转化成主存储器的地址,cpu使用地址的时候首先访问主存储器地址,但是访问的是cache,所以这个时…

第十二周学习总结 Progress Lack

关于计划的制定 FlowUs计划链接&#xff1a; 点击我进入计划 发现不足&#xff1a;首先&#xff0c;制定计划经验不足&#xff0c;制定计划应该是具体的、有任务量、完成时间。 其次任务应该是可衡量的&#xff08;比如&#xff0c;我阅读李升波老师的网站文章&#xff0c;应…

【WAX链游】发布一个免费开源的Alien Worlds【外星世界】合约脚本TLM

前言 《链游Farmers World【农民世界】爆火&#xff0c;发布一个免费开源的脚本》 在之前的文章中&#xff0c;我们分享了一个开源的农民世界(Farmers World)脚本 【OpenFarmer】&#xff1a;https://github.com/encoderlee/OpenFarmer 经过这段时间以来的不断学习&#xff…

【HTML】重点知识内容~快速上手

推荐前端学习路线如下&#xff1a; HTML、CSS、JavaScript、noodJS、组件库、JQuery、前端框架&#xff08;Vue、React&#xff09;、微信小程序和uniapp、TypeScript、webpack 和 vite、Vue 和 React 码源、NextJS、React Native、后端内容。。。。。。 HTML基本结构&#xff…

QT教程:QSortFilterProxyModel代理实现自定义排序、联合过滤

1. QsortFilterProxyModel介绍 QsortFilterProxyModel类用来为model和view之间提供强大的排序和过滤支持。将模型排序或者过滤后在视图上显示,并且无需对模型中的数据进行任何转换&#xff0c;也无需对模型在中数据进行修改。 比如: 对某列筛选带有”xxx”的关键字出来.并支持…

Maya——1——在maya中,用Arnold(阿诺德)还原Subtance Painter(sp)中的材质效果。

1根据上图的导出选项&#xff0c;在sp中设置arnold的导出参数&#xff0c;得到五张贴图&#xff0c;删掉其中的高度图&#xff08;用不上&#xff09;留下这四张 base&#xff08;基础颜色&#xff09; Metallic&#xff08;金属度&#xff09; Normal&#xff08;法线&#x…