浅谈 CSS 的用法
1.1 CSS 简介
1.1.1 概述
为了让网页元素的样式更加丰富,也为了让网页的内容和样式能拆分开,CSS 由此诞生,CSS 是 Cascading Style Sheets 的首字母缩写,意思是层叠样式表。有了 CSS,html 中大部分表现样式的标签就废弃不用了,html 只负责文档的结构和内容,表现形式完全交给 CSS,html 文档变得更加简洁。
1.1.2 CSS 的定义
选择器 { 属性:值; 属性:值; 属性:值;}
选择器是将样式和页面元素关联起来的名称,属性是希望设置的样式属性,每个属性有一个或多个值。属性和值之间用冒号,一个属性和值与下一个属性和值之间用分号,最后一个分号可以省略。
div{
width:100px;
height:100px;
background:gold;
}
1.2 CSS 与 HTML 的连接方式
1.2.1 内联样式
示例
<div style="color:red;" >hello world</div>
注意 ① 任何标签都有 style 属性【一般不使用内联样式】 ② 作用范围为当前标签体
1.2.2 内部样式
示例
<html>
<head>
<style>
div {
color:red;
}
</style>
</head>
<body>
<div>hello world</div>
</body>
</html>
注意 ① 内部样式 css 写在 head 的 style 中 ② 作用范围为当前页面
1.2.3 外部样式
格式
/*
* 创建 css.css文件
*/
div {
color:red;
}
<head>
<!-- 方式一 -->
<style>
import "./css.css";
</style>
<!-- 方式二 -->
<link rel="stylesheet" type="text/css" href="./css.css" />
</head>
<body>
<div>hello world</div>
</body>
1.3 CSS选择器
1.3.1 元素选择器
标签选择器,此种选择器影响范围大,一般用来做一些通用设置,或用在层级选择器中。
示例
div {
属性:值
···
}
注意 ① 使用元素选择器该元素将全部应用该样式 ② 元素选择器等级最低可被 id、类选择器覆盖
1.3.2 类选择器
通过类名来选择元素,一个类可应用于多个元素,一个元素上也可以使用多个类,应用灵活,可复用,是 css 中应用最多的一种选择器。
示例
.name {
属性:值
···
}
<div class="name" > </div>
注意 ① class可以重名 ② 类选择器会被id选择器覆盖
1.3.3 id 选择器
通过 id 来选择元素,元素的 id 不能重复,所以一个样式设置项只能对应于页面上一个元素,不能复用, id 一般给程序使用,所以不推荐使用 id 作为选择器。
示例
#id {
属性:值
···
}
<div id="id" > </div>
1.3.4 其他选择器
并集选择器
.name1,.name2,.name3 { ··· } /* 多个选择器公用一个 */
伪类选择器
a:link{} /* 连接访问前的样式 */
a:visited{} /* 连接被访问后的样式 */
a:active{} /* 连接正在被访问的样式 */
a:hover{} /* 鼠标悬浮的样式 */
1.4 盒子模型
元素在页面中显示成一个方块,类似一个盒子,CSS盒子模型就是使用现实中盒子来做比喻,帮助我们设置元素对应的样式。把元素叫做盒子,设置对应的样式分别为:盒子的宽度(width)、盒子的高度(height)、盒子的边框(border)、盒子内的内容和边框之间的间距(padding)、盒子与盒子之间的间距(margin)。
1.4.1 盒子设置
设置宽高
width:200px; /* 设置盒子的宽度,此宽度是指盒子内容的宽度,不是盒子整体宽度 */
height:200px; /* 设置盒子的高度,此高度是指盒子内容的高度,不是盒子整体高度 */
设置边框
border-top:10px solid red; /* 设置顶部边 */
border-bottom:10px solid red; /* 设置低部边 */
border-left:10px solid red; /* 设置左边 */
border-right:10px solid red; /* 设置右边 */
其中 10px 表示线框的粗细;solid(实线) 、dashed(虚线)、dotted(点线);red 表示线的颜色。四个边如果设置一样,可以将四个边的设置合并成一句:
border:10px solid red;
设置内间距
padding-top:20px; /* 设置顶部内间距20px */
padding-left:30px; /* 设置左边内间距30px */
padding-right:40px; /* 设置右边内间距40px */
padding-bottom:50px; /* 设置底部内间距50px */
上面的设置可以简写如下:
/* 四个值按照顺时针方向,分别设置的是 上 右 下 左 四个方向的内边距值。 */
padding:20px 40px 50px 30px;
/* 设置顶部内边距为20px,左右内边距为40px,底部内边距为50px */
padding:20px 40px 50px;
/* 设置上下内边距为20px,左右内边距为40px*/
padding:20px 40px;
/* 设置四边内边距为20px */
padding:20px;
设置外间距
margin-top:20px; /* 设置顶部内间距20px */
margin-left:30px; /* 设置左边内间距30px */
margin-right:40px; /* 设置右边内间距40px */
margin-bottom:50px; /* 设置底部内间距50px */
上面的设置可以简写如下:
/* 四个值按照顺时针方向,分别设置的是 上 右 下 左 四个方向的内边距值。 */
margin:20px 40px 50px 30px;
/* 设置顶部内边距为20px,左右内边距为40px,底部内边距为50px */
margin:20px 40px 50px;
/* 设置上下内边距为20px,左右内边距为40px*/
margin:20px 40px;
/* 设置四边内边距为20px */
margin:20px;
设置垂直居中
margin: auto;
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
1.4.2 盒子的真实尺寸
盒子的 width 和 height 值固定时,如果盒子增加 border 和 padding,盒子整体的尺寸会变大,所以盒子的真实尺寸为: ♞ 盒子宽度 = width + padding 左右 + border 左右 ♞ 盒子高度 = height + padding 上下 + border 上下
1.4.3 浮动
浮动的特性 ① 浮动元素有左浮动(float:left)和右浮动(float:right)两种 ② 浮动的元素会向左或向右浮动,碰到父元素边界、其他元素才停下来 ③ 相邻浮动的块元素可以并在一行,超出父级宽度就会换行 ④ 父元素如果没有设置尺寸(一般是高度不设置),父元素内整体浮动的子元素无法撑开父元素,父元素需要清除浮动
- python 序列化数据:pickle与json ,dumps与loads
- golang继承,和多态
- python 利用random生成验证码与MD5码加密过程
- Java内部类的继承
- Java继承类中static成员函数的重写
- Search for a range寻找上下界-Leetcode
- Basic Calculator 基本计算器-Leetcode
- python yield函数深入浅出理解
- 十分钟搞定 Tensorflow 服务
- datapump跨平台升级迁移的总结 (r8笔记第77天)
- Java中isAssignableFrom()方法与instanceof()方法用法
- 与Ajax同样重要的jQuery(1)
- Java中Class类详解、用法及泛化
- python 函数编程的位置参数、默认参数、关键字参数以及函数的递归
- HTML 教程
- HTML 简介
- html div 标签介绍
- html span 标签介绍
- html a 超链接标签
- HTML Br换行标签介绍
- HTML P段落标签介绍
- HTML br与p标签区别
- Html H 标题标签
- html px em pt长度单位
- HTML form 标签
- HTML radio 单选框
- HTML B 加粗标签
- HTML strong加粗粗体标签
- HTML em 强调标签
- HTML i 斜体标签
- HTML u下划线标签
- HTML s 删除线标签
- Html img 图片标签
- Html上标注sup与下标注sub标签
- HTML nobr 禁止换行标签
- HTML hr 水平线标签
- HTML label 标签
- HTML input 标签
- HTML textarea 标签
- HTML select下拉列表标签
- HTML checkbox 多选框
- HTML font color 标签
- HTML iframe 框架标签
- HTML Table 表格
- HTML dl dt dd 标签
- HTML ol li有序列表标签
- HTML ul li 无序列表标签
- HTML 注释
- CSS 教程
- CSS 简介
- CSS 语法
- CSS Id 和 Class选择器
- CSS 样式的创建
- CSS background 背景介绍
- CSS 文本样式
- CSS font 字体
- CSS A 链接
- CSS ul ol列表样式
- CSS TABLE 样式
- CSS 框模型
- CSS border 边框
- CSS Outlines 轮廓
- CSS 外边距 Margin
- CSS Padding 内边距
- CSS 分组和嵌套选择器
- CSS 尺寸 (Dimension)
- CSS Display 属性
- CSS Position 定位
- CSS Float 浮动
- CSS 水平对齐(Horizontal Align)
- CSS 组合选择符
- CSS 伪类
- CSS 伪元素
- CSS 导航栏
- CSS 下拉菜单
- CSS 图片廊
- CSS 图像透明/不透明
- CSS sprite 图像拼合技术
- CSS 媒体类型
- CSS 属性选择器
- CSS 实例
- 1478. 安排邮筒 Krains 2020-07-30 14:51:32 动态规划DFS数学
- 435. 无重叠区间 Krains 2020-07-28 11:26:10 贪心
- 632. 最小区间 Krains 2020-08-01 09:51:18 单调队列双指针堆
- 【R语言】高维数据可视化| ggplot2中会“分身术”的facet_wrap()与facet_grid()姐妹花
- 百万并发「零拷贝」技术系列之Java实现
- 腾讯云LiteAV、IM SDK(iOS)
- 在 Docker 中生成 ProtoBuffer、gRPC 文件
- Golang MongoDB Driver 更新符合条件的数组元素的字段
- 638. 大礼包 Krains 2020-08-01 19:48:29 动态规划DFS
- 650. 只有两个键的键盘 Krains 2020-08-02 09:39:39 动态规划DFS
- 类加载子系统 Krains 2020-07-31
- 理解类装载器
- MySQL-Python:使用技巧
- 使用Pytorch和Matplotlib可视化卷积神经网络的特征
- 微软复活20年前生产力工具PowerToys,填补Wind10缺失功能,开源且免费