AI智能
改变未来

CSS小白入门笔记


一、CSS简介

1. 什么是CSS

​ CSS:Cascading Style Sheet 层叠样式表

​ 是一组样式设置规则,用于控制页面的外观样式

2. CSS作用

  • 页面外观美化
  • 布局和定位

二、基本用法

1.CSS语法

<head><style type=\"text/css\">选择器{属性名:属性值;属性名:属性值;}</style></head>
  • 选择器:要修饰的对象(东西)
  • 属性名:修饰对象的哪个属性(样式)
  • 属性值:属性的取值

2. CSS应用方式

​ 也称为CSS引用方式,有三种方式:内部样式、行内样式、外部样式

2.1 内部样式

​ 也称为内嵌样式,在页面头部通过style标签定义

​ 对当前页面所有符合样式选择器的标签都起作用

2.2 行内样式

​ 也称为嵌入样式,使用HTML标签的style属性定义

​ 只对设置style属性的标签起作用

2.3 外部样式

​ 使用单独的

css

文件定义,然后在页面头部中使用link标签引入外部样式表

<link rel=\"stylesheet\" href=\"css样式文件的路径\" type=\"text/css\">

​ 所有引入样式表文件的页面都起作用

步骤:

  1. 新建一个css目录,目录下建一个
    .css

    文件

  2. 在html文件的头部使用link标签引入外部样式表

.css

文件:

span{color:green;text-decoration: underline;}

.html

文件:

<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>Title</title><!--内部样式--><style>p{color:red;font-size:50px;}</style><!--引用外部样式文件--><link rel=\"stylesheet\" href=\"css/style.css\"></head><body><p>welcome</p><!--行内样式--><div style=\"color: blue; font-weight: bold;\">to</div><p>css</p><span>哈哈</span></body></html>

3. CSS注释

​ CSS的注释形式:/**内容**/

​ 注意:千万不要在style标签中写html的注释,如下

<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>Title</title><style>/*正确注释*/<!--错误注释-->p{color:red;font-size:50px;}</style></body></html>

三、选择器

1. 基础选择器

1.1 标签选择器

​ 也称为元素选择器,使用HTML标签作为选择器名称

​ 以标签名作为样式应用依据

1.2 类选择器

​ 使用自定义名称,以

.

作为前缀,然后通过HTML标签的class属性调用类选择器

​ 以标签的class属性值作为样式应用依据

​ 注意:

  • 调用时不能添加

    .

  • 同时调用多个类选择器时以空格隔开

  • 类选择器名称不能以数字开头

    1.3 ID选择器

    ​ 使用自定义名称,以

    #

    作为前缀,然后通过HTML标签的id属性进行名称自动匹配

    ​ 以标签的id属性值作为样式应用依据,一对一的关系

<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>Title</title><style>/*标签选择器*/p{color: red;}/*类选择器*/.hello{color: blue;}.world{text-decoration: line-through;}/*ID选择器*/#aaa{background: #ccc;}</style></head><body><!--引用ID选择器--><p id=\"aaa\">嘿嘿</p><div>哈哈</div><span>嘻嘻</span><p>吼吼</p><div class=\"hello\">YY</div><!--同时调用多个类选择器--><ul><li class=\"hello world\">Java开发</li></ul></body></html>

2. 复杂选择器

2.1 复合选择器

​ 标签选择器和类选择器、标签选择器和ID选择器,一起使用

​ 必须同时满足两个条件才能应用样式

2.2 组合选择器

​ 也称为集体声明

​ 将多个具有相同样式的选择器放在一起声明,使用逗号

,

隔开

2.3 嵌套选择器

​ 在某个选择器内再设置选择器,通过空格隔开

​ 只有满足层次关系最里层的选择器所对应的标签才会应用样式

​ 注:使用

空格

时不区分父子还是后代,使用

>

时必须是父子关系才行

2.4 伪类选择器

​ 根据不同的状态显示不同的样式,一般多用于a标签,即超链接

​ 四种状态:

​ :link 未访问的链接

​ :visited 已访问的链接

​ :hover 鼠标移动到链接上,即悬浮在链接上

​ :active 选定的链接,被激活

​ 要注意四种状态的书写顺序: link——> visited——>hover­——­>active

<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>Title</title><style>/*复合选择器:标签选择器和类选择器*/p.hello{color: red;}/*复合选择器:标签选择器和ID选择器*/div#world{color: blue;}/*组合选择器,也称为集体声明*/.hello{text-decoration: underline;}.world{text-decoration: line-through;}div.abc{text-decoration: overline;}.hello,.world,div.abc{font-size: 20px;font-weight: bold;background: #cccccc;}/*嵌套选择器*/div span{font-style: italic;}/*伪类选择器*//*只能按照这种顺序书写,不能随便换顺序*/a:link{font-size: 12px;color: red;text-decoration: none;}a:visited{font-size: 20px;color: yellow;text-decoration: none;}a:hover{font-size: 30px;color: blue;text-decoration: none;}a:active{font-size: 40px;color: green;text-decoration: none;}</style></head><body><p class=\"hello\">welcome</p><div id=\"world\" class=\"abc\">to</div><span class=\"hello\">css</span><p>hello</p><div><span>嘿嘿</span></div><!--如果上面嵌套选择器写的是div>span,那只有父子关系可以应用,下面这种不能应用--><div><p><span>嘻嘻</span></p></div><a href=\"test02.html\">打开test02页面</a></body></html>

3. 选择器优先级

3.1 优先级

​ 行内样式 > ID选择器 > 类选择器 > 标签选择器

​ 原因:首先加载标签选择器,再加载类选择器,然后加载ID选择器,最后加载行内样式

​ 后加载的会覆盖先加载的同名样式

​ 注:当样式不冲突时会全部加载,样式冲突时按选择器的优先级加载

3.2 内外部样式加载顺序

​ 就近原则

原因:按照书写顺序依次加载,在同优先级的前提下,后加载的会覆盖先加载的同名样式,所以离的越近越优先

3.3 !important

​ 可以使用

!important

使某个样式属性具有最高的优先级

<style>p{color: red;text-decoration: underline!important;}</style>

四、常用CSS属性

1. 字体属性

​ 定义字体相关的样式

属性 含义 说明
font-­size 大小、尺寸 所有CSS属性的默认值都为inherit(继承父容器的大小)
font­-weight 粗细 取值:normal、bold(粗体)
font-­family 字体 取值:黑体、楷体等
font­-style 样式 取值:normal、italic(斜体)

2. 文本属性

属性 含义 解释
color 颜色 使用英文单词、16进制的RGB值,特定情况下可以缩写,如#FFFFFF ­­> #FFF
line-­height 行高 行内容的高度,也可以简单的理解为行之间的距离
text­-align 水平对齐方式 取值:left、center、right
vertica-l­align 垂直对齐方式 取值:top、middle、bottom,可用于图片和文字的对齐方式
text­decoration 文本修饰 取值:underline、overline、line­through、none

3. 背景属性

属性 含义 解释
background-­color 背景颜色
background-image 背景图片 必须使用

url(路径)
background-repeat 背景图片的重复方式 取值:repeat(默认)、repeat­-x、repeat-­y、no­-repeat
background­position 背景图片的显示位置 取值:关键字(top、bottom、left、right、center)、坐标
background 简写 一般顺序:颜色 图片 重复方式 显示位置
<style>p{background-color: #ccc;background-image: url(image/qq.jpg);background-repeat: no-repeat;background-position: center center;background-position: 150px 50px;background: #ccc url(image/qq.jpg) no-repeat 150px 50px;}</style>

4. 列表属性

​ 使用list­style属性设置列表项前的标记

5. 浮动属性

​ 通过float属性实现元素的浮动,取值:

  • left 左浮动
  • right 右浮动
  • none 不浮动,默认值

6. 元素的显示和隐藏

​ 通过display属性设置元素是否显示,以及是否独占一行

​ 常用取值:

  • none 不显示
  • inline 将块级元素变为行级元素,不再独占一行
  • block 将行级元素变为块级元素,独占一行
  • inline-­block 在inline的基础上允许设置宽和高

注:行级元素默认无法设置宽和高,可以为行级元素设置display:inline-­block,然后就可以设置宽和高

五、盒子模型

1. 概念

​ 盒子模型是网页布局的基础,将页面中所有的元素都看作成一个盒子,盒子都包含以下几个属性:

  • width 宽度
  • height 高度
  • border 边框
  • padding 内边距
  • margin 外边距

2. 盒子属性

2.1 border

​ 表示盒子的边框

分为四个方向:上top、右right、下bottom、左left每个边都包含三种样式:颜色color、粗细width、样式styleborder-­style的取值:solid实线、dashed虚线、dotted点状线、double双线等简写,三种方式:
  • 按方向简写

    border-­top、border-­right、border-­bottom、border-­left

    书写顺序,border-­方向 : width style color

  • 按样式简写

    border­-color、border­-width、border-­style、border­-radius圆角

    书写顺序,border­-样式 : top right bottom left

    必须按顺时针方向书写,即:上、右、下、左的顺序,同时可以缩写

    ​ border-­width : 2px ——­­­­­> 四个边的宽度都为2px

    ​ border­-width : 2px 4px

    ​ border-­width : 2px 3px 4px

    注: 如果省略, 则认为上下一样、 左右一样

  • 终极简写

    如果四个边都一样,border : width style color

2.2 padding

​ 表示盒子的内边距,即内容与边框之间的距离

​ 同样也分为四个方向,也可以简写(按顺时针方向、默认上下一样,左右一样)

2.3 margin

​ 表示盒子的外边距,即盒子与盒子之间的距离

​ 同样也分为四个方向,也可以简写(按顺时针方向、默认上下一样,左右一样)

3. 元素所占空间

​ 页面中的元素实际所占空间:

  • 宽=width+左右padding+左右border+左右margin
  • 高=height+上下padding+上下border+上下margin
<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>Title</title><style>p{width: 250px;background: #cccccc;}.first{border-top-width: 1px;border-top-color: red;border-top-style: solid;/*简写*/border-bottom: 4px dashed blue;/*border-radius圆角,值为圆角的半径,举例:设置右下角*/border-bottom-right-radius: 5px;}.second{padding-left: 10px;}.third{margin-top: 50px;}body{border: 1px solid blue;width: 260px;}</style></head><body><p class=\"first\">welcome to css</p><p class=\"second\">welcome to css</p><p class=\"third\">welcome to css</p></body></html>

六、定位方式

1. 简介

​ 通过position属性实现对元素的定位,有四种定位方式

​ 常用取值:

取值 含义 解释
static 默认值 按照常规文档流进行显示
relative 相对定位 相对于标签原来位置进行的定位
absolute 绝对定位 相对于第一个非static定位的父标签的定位
fixed 固定定位 相对于浏览器窗口进行定位

​ 设置定位方式后,还需要设置定位属性(偏移量):top、bottom、left、right

​ 注:z-index 优先级属性,默认值为0,当两个元素有重叠时,优先级高的元素覆盖优先级低的元素,z-index属性只有对非static的元素设置才生效

2. 相对定位

​ 先设置元素的position属性为relative,然后再设置偏移量

3. 绝对定位

​ 先设置父标签为非static定位,然后设置元素的position属性为absolute,最后再设置偏移量

​ 注意事项:

  • 一般来说都会设置父标签为非static定位
  • 如果父标签不是非static定位,则会相对于浏览器窗口进行定位
  • 设置元素为绝对定位后,元素会浮在页面上方

4. 固定定位

​ 先设置元素的position属性为fixed,然后再设置偏移量

​ 注意事项:

  • 固定定位相当于没有找到非static定位的父标签的绝对定位
  • 设置元素为固定定位后,元素会浮在页面上方
<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>Title</title><style>#wrapper{width: 800px;border: 1px solid #ccc;position: relative;}.d1,.d2,.d3{width: 100px;height: 100px;}.d1{background: red;position: relative; /*相对定位*/top: 20px;left: 50px;z-index: 1;}.d2{background: blue;position: absolute;top: 50px;}.d3{background: green;position: fixed;top: 100px;right: 50px;}</style></head><body><div id=\"wrapper\"><div class=\"d1\">div1</div><div class=\"d2\">div2</div><div class=\"d3\">div3</div></div></body></html>
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » CSS小白入门笔记