CSS介绍
CSS(Cascading Style Sheets):层叠样式表单。
用于(增强)控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。
CSS语法规则
例如:
p {
color: blue
}
p{
color:red;
font-size:30px;
}
大括号中的最后一条语句也尽量加上分号。
CSS 注释:/注释内容/
CSS和HTML的结合方式
方式一:行内样式
需求:分别定义两个div 、span标签,分别修改每个标签的样式为:边框1个像素,实线,红色。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div style="border: 1px solid red;">div标签1</div>
<div style="border: 1px solid red;">div标签2</div>
<span style="border: 1px solid red;">span标签1</span>
<span style="border: 1px solid red;">span标签2</span>
</body>
</html>
方式二:内部样式
需求:分别定义两个div 、span标签,分别修改每个标签的样式为:边框1像素,实线,红色。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style type="text/css">
div{
border: 1px solid red;
}
span{
border: 1px solid red;
}
</style>
</head>
<body>
<div>div标签1</div>
<div>div标签2</div>
<span>span标签1</span>
<span>span标签2</span>
</body>
</html>
方式三:外部样式
1、CSS文件内容:该文件命名为one.css。
div{
border: 1px solid yellow;
}
span{
border: 1px solid red;
}
html 文件代码:在one.css文件的同级文件夹下创建该html文件。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" type="text/css" href="one.css"/>
</head>
<body>
<div>div标签1</div>
<div>div标签2</div>
<span>span标签1</span>
<span>span标签2</span>
</body>
</html>
CSS选择器
标签名选择器
标签名选择器的格式是:
标签名{
属性: 属性值;
}
标签名选择器,可以决定哪些标签被动的使用这个样式。
需求 1:在所有 div 标签上修改字体颜色为蓝色,字体大小 30 个像素。边框为 1 像素黄色实线。并且修改所有 span 标签的字体颜色为黄色,字体大小 20 个像素。边框为 5 像素蓝色虚线。
示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>选择器</title>
<style type="text/css">
div{
border: 1px solid yellow;
color: blue;
font-size: 30px;
}
span{
border: 5px dashed blue;
color: yellow;
font-size: 20px;
}
</style>
</head>
<body>
<!--
需求:在所有div标签上修改字体颜色为蓝色,字体大小30个像素。边框为1像素、黄色实线。
并且修改所有span标签的字体颜色为黄色,字体大小为20个像素。边框为5像素、蓝色虚线。
-->
<div>div标签1</div>
<div>div标签2</div>
<span>span标签1</span>
<span>span标签2</span>
</body>
</html>
id选择器
id 选择器的格式是:
#id 属性值{
属性: 属性值;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>id选择器</title>
<style type="text/css">
#id_00000{
color: blue;
font-size: 30px;
border: 1px yellow solid;
}
#id_00001{
color: red;
font-size: 20px;
border: 5px blue dotted;
}
</style>
</head>
<body>
<!--
需求:分别定义两个div标签,
第一个div标签定义id为id_00000,然后根据id属性定义css样式修改字体颜色为蓝色,字体大小为30个像素。边框为1像素的黄色实线。
第二个div标签定义id为id_00001,然后根据id属性定义css样式修改的字体颜色为红色,字体大小 20个像素。边框为5像素蓝色点线。
-->
<div id="id_00000">div标签1</div>
<div id="id_00001">div标签2</div>
</body>
</html>
class选择器(类选择器)
class选择器的格式是:
. class 属性值{
属性: 属性值;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class类选择器</title>
<style type="text/css">
.class_00000{
color: blue;
font-size: 20px;
border: 5px solid yellow;
}
.class_00001{
color: grey;
font-size: 30px;
border: 5px solid red;
}
</style>
</head>
<body>
<!--
需求1:修改class属性值为class_00000的span或div标签,字体颜色为蓝色,字体大小20个像素。边框为5像素黄色实线。
需求2:修改class属性值为class_00001的div标签,字体颜色为灰色,字体大小30个像素。边框为5像素红色实线。
-->
<div class="class_00000">div标签1</div>
<div class="class_00000">div标签2</div>
<div class="class_00001">div标签3</div>
<span class="class_00000">span标签1</span>
<span class="class_00001">span标签2</span>
</body>
</html>
组合选择器
组合选择器的格式是:
选择器1,选择器2,选择器n{
属性: 属性值;
}
组合选择器可以让多个选择器共用同一个 css 样式代码。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>组合选择器</title>
<style type="text/css">
#id_00000, .class_00000 {
color: blue;
font-size: 20px;
border: 1px yellow solid;
}
</style>
</head>
<body>
<div id="id_00000">div标签1</div>
<span class="class_00000">span标签1</span> <br />
<div class="class_00000">div标签2</div>
<span>span标签2</pan>
</body>
</html>
交集选择器
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>交集选择器</title>
<style type="text/css">
p#id_00000 {
color: blue;
font-size: 20px;
border: 1px yellow solid;
}
</style>
</head>
<body>
<h1>悯农</h1>
<p id="id_00000">锄禾日当午,</p>
<p>汗滴禾下土,</p>
<p>谁知盘中餐,</p>
<p>粒粒皆辛苦。</p>
</body>
</html>
子元素及后代选择器
标签之间的关系:
1、祖先元素:直接或间接包含后代元素的元素。
2、后代元素:直接或间接被祖先元素包含的元素。
3、父元素:直接包含子元素的元素。
4、子元素:直接被父元素包含的元素。
5、兄弟元素:拥有相同父元素的元素。
:first-child 选择第一个子标签
:last-child 选择最后一个子标签
:nth-child 选择指定位置的子元素
:first-of-type
:last-of-type
:nth-of-type 选择指定类型的子元素
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>交集选择器</title>
<style type="text/css">
/*
为div中的span设置颜色为绿色。
*/
div span {
color: green;
}
#id_00000 span{
color: red;
}
#id_00001 p span{
color: blue;
}
/*
为div的子元素span设置背景颜色为黄色。
>:找直接子元素,不会找非直接子元素。
*/
div>span{
background-color: yellow;
}
</style>
</head>
<body>
<div>
<span>div标签中的span标签。</span>
<p><span>p标签中的span标签。</span></p>
</div>
<div id="id_00000">
<span>div标签中的span元素。</span>
</div>
<div id="id_00001">
<span>div标签中的span标签。</span>
<p><span>p标签中的span标签。</span></p>
</div>
<span>body标签中的span元素。</span>https://www.luping.net.cn/
</body>
</html>
伪类选择器
a:link 正常链接
a:visited 访问过的链接(只能定义字体颜色)。
a:hover 鼠标滑过的链接。
a:active 正在点击的链接。
:focus 获取焦点
:before 指定元素前
:after 指定元素后
::selection 选中的元素
给段落定义样式:
:first-letter 首字母
:first-line 首行
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>交集选择器</title>
<style type="text/css">
/*
伪类专门表示元素的一种特殊状态,比如:访问过的超链接、普通的超链接、获取焦点的文本框。
* */
/*
为没有访问过的链接设置为绿色
* */
a:link{
color: green;
}
/*为访问过的链接设置为红色
visited伪类只能设置字体的颜色。
* */
a:visited{
color: red;
}
/*
hover伪类:鼠标移入时的样式
* */
a:hover{
color:yellow
}
/*
active伪类:超链接点击不放开时的样式
* */
a:active{
color: blue;
font-size: 20px;
}
/*
hover、active不仅仅可以对a标签起作用,对其他标签也起作用。
* */
p:hover{
background: blue;
}
p:active{
background: yellow;
}
/*
focus伪类:获取焦点。
* */
input:focus{
/*获取焦点后,将文本框的背景色改为黄色。*/
background: yellow;
}
/*
selection伪类:
为p标签中选中的内容使用样式。
* */
p::selection{
background-color: orange;
}
/*在Firefox浏览器中也可以使用-moz-selection*/
p::-moz-selection{
background-color: orange;
}
</style>
</head>
<body>
<a href="http://www.baidu.com">百度</a> <br/>
<a href="http://www.jd1.com">京东</a>
<p>我是一个段落。</p>
<input type="text" name="username"/>
</body>
</html>
伪元素
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
使用伪元素来表示元素中的一些特殊的位置。
* */
/*
为p标签中的第一个字符设置样式
* */
p:first-letter{
color: red;
font-size: 20px;
}
/*
为p标签中的第一行设置背景颜色
* */
p:first-line{
background-color: yellow;
}
/*
before:元素最前面的部分。
一般结合content一起使用。
* */
p:before{
content: "我会出现在最前面。";
color: red;
}
/*
after:元素最后面的部分。
一般结合content一起使用。
* */
p:after{
content: "我会出现在最后面。";
color:orange;
}
</style>
</head>
<body>
<p>我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。我是p标签中的元素。</p>
</body>
</html>
属性选择器
[属性名]
[属性名=“属性值”]
[属性名~=“属性值”]
[属性名|=“属性值”]
[属性名^=“属性值”]
[属性名$=“属性值”]
[属性名*=“属性值”]
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
[属性名]:选取含有指定属性的元素。
为所有具有title属性的p元素,设置背景元素。
* */
p[title]{
background-color: yellow;
}
/*
[属性名="属性值"]:选取含有指定属性和指定值的元素。
为p标签中具有title属性且值为one的标签内容设置字体大小。双引号加与不加都可以。
* */
p[title="one"]{
font-size: 20px;
}
/*
[属性名^="属性值"]:选取以指定内容开头的元素。
* */
p[title^="tw"]{
font-size: 30px;
}
/*
[属性名$="属性值"]:选取以指定内容结尾的元素。
* */
p[title$="ee"]{
font-size: 50px;
}
/*
[属性名*="属性值"]:选取属性值包含指定内容的元素。
* */
p[title*="ou"]{
font-size: 40px;
}
</style>
</head>
<body>
<p title="title属性中指定的文字。">p标签中的内容</p>
<p>p标签中的内容</p>
<p>p标签中的内容</p>
<p>p标签中的内容</p>
<p title="one">p标签中的内容</p>
<p title="two">p标签中的内容</p>
<p title="three">p标签中的内容</p>
<p title="four">p标签中的内容</p>
</body>
</html>
子元素的伪类
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
p:first-child{
background-color: yellow;
}
body>p:first-child{
background-color: blue;
}
p:last-child{
font-size: 30px;
}
/*
nth-child:选中指定位置的元素。
参数:
even:表示偶数位置的子元素。
odd:表示奇数位置的子元素。
*/
p:nth-child(1){
font-size: 50px;
}
p:first-of-type{
color: red;
}
p:last-of-type{
color: green;
}
p:nth-of-type(2){
color: yellow;
}
</style>
</head>
<body>
<!--<span>span标签中的内容。</span>-->
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<div>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
</div>
<span>span标签中的内容。</span>
</body>
</html>
兄弟元素选择器
语法:
查找后边一个兄弟元素:兄弟元素+兄弟元素{}
查找后边所有的兄弟元素:兄弟元素~兄弟元素{}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
为span后的一个p元素设置背景色。
选中后一个紧挨着的元素。
* */
span+p{
background-color: yellow;
}
/*
选中后面的所有兄弟元素。
* */
span~p{
background-color: yellow;
}
</style>
</head>
<body>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<span>span标签中的内容。</span>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
<p>p标签中的内容。</p>
</body>
</html>
否定伪类
语法:
:not(选择器){}
比如:p:not(.hello)表示选择所有的p元素但是class为hello的除外。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
为所有的p元素设置背景颜色,除了class值为class_00000的元素。
否定伪类:
作用:从已选中的元素中剔除出某些元素。
语法::not(选择器)
* */
p:not(.class_00000){
background-color: yellow;
}
</style>
</head>
<body>
<p>p标签的内容。</p>
<p>p标签的内容。</p>
<p class="class_00000">p标签的内容。</p>
<p>p标签的内容。</p>
<p>p标签的内容。</p>
</body>
</html>
样式的继承
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
div{
color: green;
/*背景相关的样式后代元素继承不了。*/
background-color: yellow;
}
</style>
</head>
<body>
<div>
div标签中的内容。
<p>
p标签中的内容。
<span>span标签中的内容。</span>
</p>
</div>
</body>
</html>
选择器的优先级
选择器的权重:
在页面中使用CSS选择器选中元素时,经常都是一个元素同时被多个选择器选中。
比如:
– body h1
– h1
上边的两个选择器都会选择h1元素,如果两个选择器设置的样式不一致那还好,不会产生冲突,但是如果两个选择器设置的是同一个样式,这样h1到底要应用哪个样式呢?CSS中会默认使用权重较大的样式。
权重又是如何计算的呢?
不同的选择器有不同的权重值:
– 内联样式:权重是1000
– id选择器:权重是100
– 类、属性、伪类选择器:权重是10
– 元素选择器:权重是1
– 通配符:权重是0
计算权重需要将一个样式的全部选择器相加,比如上边的body h1的权重是20,h1的权重是10,所以第一个选择器设置的样式会优先显示。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
使用不同的选择器,选中同一个元素时并且设置相同的样式时,由选择器的优先级(权重)决定。
优先级规则:
内联样式:优先级1000
id选择器:优先级100
类和伪类选择器:优先级10
元素选择器:优先级1
通配*选择器:优先级0
继承的样式:没有优先级
当选择器中包含多种选择器时,需要将多种选择器的优先级值相加然后在比较。
选择器的优先级计算不会超过它的最大优先级值。
如果选择器对的优先级一样,择使用靠后的样式。
并集选择器:并集选择器的优先级单独计算。
可以在样式的最后,添加!important,则此时该样式将会获得最高的优先级。
background-color: red !important
div、p、#id、.class
* */
#id_00000{
background-color: blue;
}
.class_00000{
background-color: red;
}
p{
background-color: green;
}
*{
font-size: 50px;
}
p{
font-size: 30px;
}
</style>
</head>
<body>
<p id="id_00000" class="class_00000">p标签中的内容。
<span>span中的内容。</span>
</p>
</body>
</html>
文本格式
单位
1、px
2、百分比
也可以使用一个百分数来表示一个大小,百分比是相对于父元素来说的,如果父元素使用的大小是16px,则100%就是16px,200%就是32px。
3、em
em和百分比类似,也是相对于父元素说的,1em就相当于100%,2em相当于200%,1.5em相当于150%。相对于当前元素的字体大小(font-size)。
1em=1font-size,当使用em时,当字体大小发生改变时,em也会随之改变。当设置字体相关的样式时,经常会使用em。
颜色
1、在CSS中可以直接使用颜色的关键字来代表一种颜色。
17种颜色:
aqua、black、blue、fuchsia、gray、green、lime、maroon、navy、olive、orange、purple、red、silver、teal、white、yellow。
2、(1)十六进制颜色
用的最多的颜色是十六进制符号。一个颜色值,比如:#6600FF实际上包含了三组十六进制的数字。
上边的例子中66代表红色的浓度,00代表绿色的浓度,FF代表了蓝色的浓度。最后的颜色是由这些指定浓度的红绿蓝混合而成的。
如果每一组数中的两个数字都相同,就可以把十六进制的数字缩短为只有3个字符,如将#6600FF缩短为#60F。
(2)RGB值
也可以使用计算机中常用的RGB值来表示颜色。可以使用0255的数值,也可以使用0%100%的百分比数。
– RGB(100%,0%,0%)
– RGB(0,255,0)
第一个数表示红色的浓度,第二个数表示绿色浓度,第三个数表示蓝色的浓度。
(3)RGBA
RGBA表示一个颜色和RGB类似,只不过比RGB多了一个A(alpha)来表示透明度,透明度需要一个0-1的值。0表示完全透明,1表示完全不透明。
– RGBA(255,100,5,0.5)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#id_00000{
width: 200px;
height: 200px;
background-color: red;
background-color: rgb(0, 255, 0);
background-color:rgb(10%, 20%, 30%);
background-color: #0000FF;
background-color: #F00;
}
</style>
</head>
<body>
<div id="id_00000">
</div>
</body>
</html>
文本大小
font-size:用来指定文字的大小。
文本字体
font-family
通过font-family可以同时指定多个字体。
浏览器会优先使用第一个,如果没有找到则使用第二个,以此类推。
在网页中讲字体分成5大类:
serif:衬线字体
sans-serif:非衬线字体
monospace:等宽字体
cursive:草书字体
fantasy:虚幻字体
可以将字体设置为这些大的分类,当设置为大的分类以后,浏览器会自动选择指定的字体并应用样式。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#id_00000{
font-size: 30px;
font-family: serif;
}
#id_00001{
font-size: 30px;
font-family: sans-serif;
}
#id_00002{
font-size: 30px;
font-family: monospace;
}
#id_00003{
font-size: 30px;
font-family: cursive;
}
#id_00004{
font-size: 30px;
font-family: fantasy;
}
</style>
</head>
<body>
<p id="id_00000">衬线字体:p标签中的内容;ABCDEFG,abcdefg.</p>
<p id="id_00001">非衬线字体:p标签中的内容;ABCDEFG,abcdefg.</p>
<p id="id_00002">等宽字体:p标签中的内容;ABCDEFG,abcdefg.</p>
<p id="id_00003">草书字体:p标签中的内容;ABCDEFG,abcdefg.</p>
<p id="id_00004">虚幻字体:p标签中的内容;ABCDEFG,abcdefg.</p>
</body>
</html>
斜体和粗体
font-style用来指定文本的斜体。
font-style:normal 指定非斜体
font-style:italic 指定斜体
font-style:oblique 文字会以倾斜效果显示
italic和oblique效果一样。
font-weight用来指定文本的粗体。
font-weight:normal 指定非粗体
font-weight:bold 指定粗体
小型大写字母
font-variant属性可以将字母类型设置为小型大写。在该样式中,字母看起来像是稍微缩小了尺寸的大写字母。
font-variant:small-caps
字体属性的简写
font可以一次性同时设置多个字体的样式。
语法:font:加粗 斜体 小型大写 大小/行高 字体
这里前边几个加粗、斜体和小型大写的顺序无所谓,也可以不写,但是大小和字体必须写且必须写到最后两个。字体必须倒数第一,大小必须倒数第二。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#id_00000{
/*设置文字大小*/
font-size: 30px;
/*设置字体*/
font-family: "微软雅黑";
/*设置文字斜体*/
font-style: italic;
/*设置文字加粗*/
font-weight: bold;
/*设置小型大写字母*/
font-variant: small-caps;
}
#id_00001{
font: italic bold small-caps 30px 微软雅黑;
}
</style>
</head>
<body>
<p id="id_00000">p标签中的内容。ABCDEFGabcdefg</p>
<p id="id_00001">p标签中的内容。ABCDEFGabcdefg</p>
</body>
</html>
行间距
在CSS中没有提供直接设置行间距的方式,只能通过设置行高来间接的设置行间距,行高越高行间距越大。
line-height 设置行高。
可以接收的值:
百分数:相对于字体计算行高。
数值:字体大小相应的倍数。
行间距 = line-height – font-size
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#id_00000{
width: 200px;
height: 200px;
background-color: yellow;
}
#id_00001{
/*对于单行文本来说,将行高设置为父元素的高度,可以使单行文本在父元素中居中。*/
line-height: 200px;
}
</style>
</head>
<body>
<div id="id_00000">
<a id="id_00001" href="http://www.baidu.com">这是一个超链接。</a>
</div>
</body>
</html>
英文单词大、小写
text-transform属性用于将元素中的字母全都变成大小。
属性值:
uppercase 所有单词大写。
lowercase 所有单词小写。
capitalize 每个单词的首字母大写。
none 正常。
文本的修饰
text-decoration属性,用来给文本添加各种修饰。通过它可以为文本的上方、下方或者中间添加线条。
属性值:
underline 定义文本下的一条线。
overline 定义文本上的一条线。
line-through 定义文本中间的一条线(删除线)。
none 默认,定义标准的文本。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
超链接默认会有下划线,原因是超链接默认的text-decoration属性的值是:underline。
将该值换成none就可以去掉下划线了。
* */
a{
text-decoration: none;
}
</style>
</head>
<body>
<a href="http://www.baidu.com">这是一个超链接。</a>
</body>
</html>
字母间距和单词间距
letter-spacing属性:设置字符(中文字符、英文字符)之间的间距。
word-spacing属性:设置单词之间的间距。
这两个属性都可以直接指定一个长度或百分数作为值。正数代表增加距离,负数代表减少距离。
对齐文本
text-align属性:设置文本的对齐方式。
属性值:
left:左对齐;默认值。
right:右对齐
center:居中对齐
justify:两边对齐
首行缩进
text-indent属性:设置首行缩进。
该样式需要指定一个长度,并且只对第一行生效。
指定正值:自动向右侧缩进指定的像素。
指定负值:自动向左侧缩进指定的像素。
向右缩进2个中文:text-indent: 2em
使用em单位,不要使用px单位,不然会随着字体类型和字体大小的改变而改变。
布局
盒子模型
width和height属性只适用于块元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.box {
/*
内容区(content):
元素中的所有的子元素和文本内容都在内容区中排列。
内容区的大小由width和height两个属性来设置
width:设置内容区的宽度。
height:设置内容区的高度。
*/
width: 200px;
height: 200px;
background-color: red;
/*
边框(border):边框属于盒子边缘,边框里边属于盒子内部,出了边框都是盒子的外部。
边框的大小会影响到整个盒子的大小。
要设置边框,至少需要设置三个样式:
border-width 边框的宽度
border-color 边框的颜色
border-style 边框的样式
*/
border-width: 10px;
border-color: green;
border-style: solid;
}
</style>
</head>
<body>
<!--
盒子模型(盒模型、框模型:box model)
CSS将页面中的所有元素都设置为了一个矩形的盒子。
将元素设置为矩形的盒子后,对页面的布局就变成将不同的盒子摆放到不同的位置。
每一个盒子都由以下几个部分组成:
内容区(content)
内边距(padding)
边框(border)
外边距(margin)
-->
<div class="box">
你好
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
.box{
color: red;
font-size: 50px;
font-family: 楷体;
background-color: greenyellow;
width: 500px;
height: 200px;
border-width: 10px;
border-color: blue;
border-style: solid;
}
</style>
</head>
<body>
<div class="box">
div标签中的内容
</div>
<p class="box">
p标签中的内容
</p>
<span class="box">
span标签中的内容
</span>
</body>
</html>
边框
border-style属性:
可选属性值:
none 定义无边框。
hidden 与 “none” 相同。不过应用于表时除外,对于表,hidden 用于解决边框冲突。
dotted 定义点状边框。在大多数浏览器中呈现为实线。
dashed 定义虚线。在大多数浏览器中呈现为实线。
solid 定义实线。
double 定义双线。双线的宽度等于border-width的值。
groove 定义 3D 凹槽边框。其效果取决于border-color的值。
ridge 定义3D垄状边框。其效果取决于border-color的值。
inset 定义 3D inset 边框。其效果取决于border-color的值。
outset 定义 3D inset 边框。其效果取决于border-color的值。
inherit 规定应该从父元素继承边框样式。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>边框</title>
<style>
.box {
width: 200px;
height: 200px;
background-color: #bfa;
/*
边框:
border-width:边框的宽度
border-color:边框的颜色
border-style:边框的样式
border-width: 10px;
默认值,一般都是3个像素
border-width可以用来指定四个方向的边框的宽度。
值的情况:
四个值:上 右 下 左
三个值:上 左右 下
两个值:上下 左右
一个值:上下左右
除了border-width,还有一组border-xxx-width,xxx可以是top、right、bottom、left。用来单独指定某一个边的宽度。
*/
/*border-width: 10px;
border-top-width: 10px;
border-left-width: 20px;
color: red;*/
/*
border-color用来指定边框的颜色,同样可以分别指定四个边的边框,规则和border-width一样。
border-color也可以省略不写,如果省略了则自动使用color的颜色值。
*/
/*border-color: orange red yellow green;
border-color: orange;*/
/*
border-style:指定边框的样式。
solid 表示实线
dotted 点状虚线
dashed 虚线
double 双线
border-style的默认值是none。表示没有边框。
*/
/*border-style: solid dotted dashed double;
border-style: solid;*/
/*border-width: 10px;
border-color: orange;
border-style: solid;*/
/*
border简写属性,通过该属性可以同时设置边框所有的相关样式,并且没有顺序要求。
除了border以外还有四个:border-xxx
border-top
border-right
border-bottom
border-left
*/
/*border: solid 10px orange;*/
/*border-top: 10px solid red;
border-left: 10px solid red;
border-bottom: 10px solid red;*/
border: 10px red solid;
border-right: none;
}
</style>
</head>
<body>
<div class="box">
Nice to meet you.
</div>
</body>
</html>
内边距
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.box {
/*
width: 200px;
height: 200px;
background-color: #bfa;
border: 10px orange solid;*/
/*
内边距(padding):
内容区和边框之间的距离。
一共有四个方向的内边距:
padding-top
padding-right
padding-bottom
padding-left
内边距的设置会影响到盒子的大小。
背景颜色会延伸到内边距上。
一共盒子的可见框的大小,由内容区、内边距和边框共同决定,所以在计算盒子大小时,需要将这三个区域加到一起计算。
*/
/*padding-top: 100px;
padding-left: 100px;
padding-right: 100px;
padding-bottom: 100px;*/
/*
padding:内边距的简写属性,可以同时指定四个方向的内边距,规则和border-width一样。
*/
/*padding: 10px 20px 30px 40px;
padding: 10px 20px 30px;
padding: 10px 20px;
padding: 10px;*/
}
/*.inner {
width: 100%;
height: 100%;
background-color: yellow;
}*/
</style>
</head>
<body>
<div class="box">
<div class="inner">
</div>
</div>
</body>
</html>
外边距
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.box1 {
width: 200px;
height: 200px;
background-color: #bfa;
border: 10px red solid;
/*
外边距(margin):
外边距不会影响盒子可见框的大小。但是外边距会影响盒子的位置。
一共有四个方向的外边距:
margin-top:上外边距,设置一个正值,元素会向下移动。
margin-right:右外边距,默认情况下设置margin-right不会产生任何效果。
margin-bottom:下外边距,设置一个正值,其下边的元素会向下移动。
margin-left:左外边距,设置一个正值,元素会向右移动。
margin也可以设置负值,如果是负值则元素会向相反的方向移动。
元素在页面中是按照自左向右的顺序排列的,所以默认情况下如果我们设置的左和上外边距则会移动元素自身
而设置下和右外边距会移动其他元素。
margin的简写属性,margin可以同时设置四个方向的外边距 ,用法和padding一样。
margin会影响到盒子实际占用的空间。
margin的值还可以设置为auto。auto一般只设置水平方向的外边距。
如果只指定左外边距或右外边距的margin为auto,则会将外边距设置为最大值。
垂直方向外边距如果设置为auto,则外边距默认就是0。
如果将left和right同时设置为auto,则会将两侧的外边距设置为相同的值。
这样就可以使元素自动在父元素中居中,所以可以将左、右外边距设置为auto以使子元素在父元素中水平居中。
*/
/*margin-top: 100px;
margin-left: 100px;
margin-bottom: 100px; */
/* margin-bottom: 100px; */
/* margin-top: -100px; */
/* margin-left: -100px; */
/* margin-bottom: -100px; */
/* margin-right: 0px; */
margin: 100px;
}
.box2 {
width: 220px;
height: 220px;
background-color: yellow
}
</style>
</head>
<body>
<div class="box1"></div>
<div class="box2"></div>
</body>
</html>
垂直外边距的重叠
在网页中相邻的垂直方向的相邻外边距会发生外边距的重叠。
外边距的重叠指兄弟元素之间的相邻外边距会取最大值而不是和。
如果父子元素的垂直外边距相邻了,则子元素的外边距会设置给父元素。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#id_00000{
width: 100px;
height: 100px;
border: 10px red solid;
background-color: #bfa;
margin-bottom: 100px;
}
#id_00001{
width: 100px;
height: 100px;
border: 10px red solid;
background-color: #bfa;
margin-top: 100px;
}
</style>
</head>
<body>
<div id="id_00000">
</div>
<div id="id_00001">
</div>
</body>
</html>
内联元素的盒模型
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
span{
background-color: #bfa;
}
#id_00000{
width: 100px;
height: 100px;
background-color: red;
}
#id_00001{
/*
内联元素不能设置宽、高。
* */
/*width: 100px;
height: 100px;*/
/*
内联元素可以设置水平方向的内边距
* */
padding-left: 100px;
padding-right: 100px;
/*
内联元素可以设置垂直方向的内边距,但是不会影响页面的布局。
* */
padding-top: 50px;
padding-bottom: 50px;
/*
内联元素可以设置边框,但是垂直的边框不会影响页面的布局。
* */
border: 1px blue solid;
/*
内联元素支持水平方向的外边距。
水平方向相邻的外边距不会重叠,而是求和。
* */
margin-right: 100px;
margin-right: 100px;
/*
内联元素不支持垂直外边距。
* */
margin-top: 100px;
margin-bottom: 100px;
}
</style>
</head>
<body>
<span id="id_00001">我是一个span</span>
<span>我是一个span</span>
<span>我是一个span</span>
<span>我是一个span</span>
<div id="id_00000"></div>
</body>
</html>
display属性与visibility属性
display属性:修改元素的类型。
不能为行内元素设置width、height、margin-top和margin-bottom。可以通过修改display来修改元素的性质。
可选属性值:
inline 将元素设置为内联元素。
block 将元素设置为块元素。
inline-block 将元素设置为行内块元素。可以使元素既有行内元素的特点又有块元素的特点:即可以设置宽高,又不会独占一行。典型代表元素img。
none 不显示元素,并且元素不会在页面中继续占有位置。
visibility属性:设置元素的显示和隐藏的状态。
可选属性值:
visible 设置元素在页面显示(默认值)。
hidden 设置元素在页面隐藏。
使用display:none隐藏的元素,不会在页面中显示并且不在占据页面的位置。
使用visibility:hidden隐藏的元素,虽然不会在页面中显示,但是依然在页面中占据位置。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
a{
background-color: #bfa;
display: block;
width: 200px;
height: 200px;
visibility: visible;
}
#id_00000{
width: 500px;
height: 500px;
background-color: green;
visibility: hidden;
}
</style>
</head>
<body>
<div id="id_00000"></div>
<a href="#">我是一个超链接</a>
</body>
</html>
overflow属性
overflow属性规定当内容溢出元素框时发生的事情。
可选属性值:
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承overflow属性的值。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*
* */
#id_00000{
width: 200px;
height: 200px;
background-color: #baf;
overflow: scroll;
}
#id_00001{
width: 100px;
height: 500px;
background-color: red;
}
</style>
</head>
<body>
<div id="id_00000">
<div id="id_00001">
</div>
</div>
</body>
</html>
文档流
网页是一个多层的结构,一层摞着一层。通过CSS可以分别为每一层来设置样式。作为用户来讲只能看到最顶上一层。这些层中,最底下的一层称为文档流,文档流是网页的基础。
我们所创建的元素默认都是在文档流中进行排列的。
元素主要有两个状态:
1、在文档流中
2、不在文档流中(脱离文档流)
元素在文档流中的特点:
一、块元素
1、块元素会在页面中独占一行(自上向下垂直排列)。
2、默认宽度是父元素的全部(会把父元素撑满)。
3、默认高度是被内容撑开(子元素)。
当元素的高度或宽度的值为auto时,指定内边距不会影响可见框的大小,而是会自动修改宽度和高度,以适应内边距。
二、内联(行内)元素
1、行内元素不会独占页面的一行,只占自身的大小。
2、行内元素在页面中自左向右水平排列,如果一行之中不能容纳下所有的行内元素,则元素会换到第二行继续自左向右排列。
3、行内元素的默认宽度和高度都是被内容撑开。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>文档流</title>
<style>
.box1 {
width: 100px;
background-color: red;
}
.box2 {
width: 100px;
background-color: green;
}
span {
background-color: blue;
}
</style>
</head>
<body>
<div class="box1">我是div1</div>
<div class="box2">我是div2</div>
<span>我是span1</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
<span>我是span2</span>
</body>
</html>
浮动
所谓浮动指的是使元素脱离原来的文本流,在父元素中浮动起来。
浮动使用float属性。
可选属性值:
none 不浮动。
left 向左浮动。
right 向右浮动。
块级元素和行内元素都可以浮动,当一个行内元素浮动以后将会自动变为一个块级元素。
当一个块级元素浮动以后,宽度会默认被内容撑开,所以当漂浮一个块级元素时我们都会为其指定一个宽度。
当一个元素浮动以后,其下方的元素会上移。元素中的内容将会围绕在元素的周围。
浮动会使元素完全脱离文档流,也就是不再在文档中占用位置。
元素设置浮动后,会一直向上漂浮直到遇到父元素的边界或者其他浮动元素。
元素浮动以后即完全脱离文档流,这时不会再影响父元素的高度。也就是浮动元素不会撑开父元素。
浮动元素默认会变为块元素,即使设置display:inline后其依然是个块元素。
清除浮动
clear属性可以用于清除元素周围的浮动对元素的影响,也就是元素不会因为上方出现了浮动元素而改变位置。
属性可选值:
left 忽略左侧浮动。
right 忽略右侧浮动。
both 忽略全部浮动。
none 不忽略浮动,默认值。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>浮动</title>
<style>
.box1 {
width: 400px;
height: 200px;
background-color: #bfa;
/*
通过浮动可以使一个元素向其父元素的左侧或右侧移动
使用 float 属性来设置于元素的浮动
可选值:
none 默认值 ,元素不浮动
left 元素向左浮动
right 元素向右浮动
注意,元素设置浮动以后,水平布局的等式便不需要强制成立
元素设置浮动以后,会完全从文档流中脱离,不再占用文档流的位置,
所以元素下边的还在文档流中的元素会自动向上移动
浮动的特点:
1、浮动元素会完全脱离文档流,不再占据文档流中的位置
2、设置浮动以后元素会向父元素的左侧或右侧移动,
3、浮动元素默认不会从父元素中移出
4、浮动元素向左或向右移动时,不会超过它前边的其他浮动元素
5、如果浮动元素的上边是一个没有浮动的块元素,则浮动元素无法上移
6、浮动元素不会超过它上边的浮动的兄弟元素,最多最多就是和它一样高
简单总结:
浮动目前来讲它的主要作用就是让页面中的元素可以水平排列,
通过浮动可以制作一些水平方向的布局
*/
float: left;
}
.box2 {
width: 400px;
height: 200px;
background-color: orange;
float: left;
}
.box3 {
width: 200px;
height: 200px;
background-color: yellow;
float: right;
}
</style>
</head>
<body>
<div class="box1"></div>
<div class="box2"></div>
<div class="box3"></div>
</body>
</html>
定位
position属性可以控制Web浏览器如何以及在何处显示特定的元素。
可以使用position属性把一个元素放置到网页中的任何位置。
属性可选值:
static
relative
absolute
fixed
相对定位
绝对定位
固定定位
z-index
常用样式
- 字体颜色
color:red;
颜色可以写颜色名如:black, blue, red, green 等颜色也可以写 rgb 值和十六进制表示值:如 rgb(255,0,0),#00F6DE,如果写十六进制值必须加# - 宽度
width:19px;
宽度可以写像素值:19px;
也可以写百分比值:20%; - 高度
height:20px;
高度可以写像素值:19px;
也可以写百分比值:20%; - 背景颜色
background-color:#0F2D4C - 字体样式:
color:#FF0000;字体颜色红色
font-size:20px; 字体大小 - 红色 1 像素实线边框
border:1px solid red; - DIV 居中
margin-left: auto;
margin-right: auto; - 文本居中:
text-align: center; - 超连接去下划线
text-decoration: none; - 表格细线
table {
border: 1px solid black; /设置边框/
border-collapse: collapse; /将边框合并/
}
td,th {
border: 1px solid black; /设置边框/
} - 列表去除修饰
ul {
list-style: none;
}
示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>06-css 常用样式.html</title>
<style type="text/css">
div{
color: red;
border: 1px yellow solid;
width: 300px;
height: 300px;
background-color: green;
font-size: 30px;
margin-left: auto;
margin-right: auto;
text-align: center;
}
table{
border: 1px red solid;
border-collapse: collapse;
}
td{
border: 1px red solid;
}
a{
text-decoration: none;
}
ul{
list-style: none;
}
</style>
</head>
<body>
<ul>
<li>11111111111</li>
<li>11111111111</li>
<li>11111111111</li>
<li>11111111111</li>
<li>11111111111</li>
</ul>
<table>
<tr>
<td>1.1</td>
<td>1.2</td>
</tr>
</table>
<a href="http://www.baidu.com">百度</a>
<div>我是 div 标签</div>
</body>
</html>
demo
1
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="utf-8" />
<title>清平乐·年年雪里</title>
<!-- <link type="text/css" rel="styleSheet" href="./css/style.css"/> -->
<style type="text/css">
body {
background: url("../images/liqingzhao.jpg") no-repeat;
padding-left: 230px;
}
hr {
width: 80%;
text-align: left;
}
h1, p {
font-family: "隶书";
color: #fff;
}
p {
font-size: 20px;
}
strong {
color: blue;
}
</style>
</head>
<body>
<h1>清平乐·年年雪里</h1>
<em>朝代:宋代</em> 作者:<strong>李清照</strong>
<hr/>
原文:
<p>
年年雪里,常插梅花醉,
<br/>
挼尽梅花无好意,赢得满衣清泪!
<br/>
今年海角天涯,萧萧两鬓生华。
<br/>
看取晚来风势,故应难看梅花。
</p>
</body>
</html>
所需图片如下:
============================
编辑网页文本
背景样式
CSS选择器
CSS3的基本选择器
伪类选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>伪类选择器</title>
<style>
/*
将ul里的第一个li设置为红色
伪类(不存在的类,特殊的类)
伪类用来描述一个元素的特殊状态
比如:第一个子元素、被点击的元素、鼠标移入的元素...
伪类一般情况下都是使用:开头
:first-child;选中第一个子元素
:last-child;选中最后一个子元素
:nth-child();选中第x个子元素
特殊值:
n;第n个;n的范围1到正无穷
2n或even;表示选中偶数位的元素
2n+1或odd;表示选中奇数位的元素
以上这些伪类都是根据所有的子元素进行排序
:first-of-type
:last-of-type
:nth-of-type()
这几个伪类的功能和上述的类似,不同点是他们是在同类型元素中进行排序
:not();否定伪类
将符合条件的元素从选择器中去除
*/
/*:first-child 选择第一个子元素*/
/*ul > li:first-child{
color: red;
}*/
/* :last-child 选择最后一个子元素*/
/*ul > li:last-child{
color: red;
}*/
/*:nth-child(n);选中第n个子元素;n值为正整数;1-n*/
/*ul > li:nth-child(odd){
color: red;
}*/
/*ul > li:nth-child(even){
color: red;
}*/
/*ul > li:first-of-type{
color: red;
}*/
ul > li:not(:nth-of-type(3)){
color: red;
}
</style>
</head>
<body>
<ul>
<!--<span>我是一个span</span>-->
<li>第〇个</li>
<li>第一个</li>
<li>第二个</li>
<li>第三个</li>
<li>第四个</li>
<li>第五个</li>
</ul>
</body>
</html>
a元素的伪类
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>a元素的伪类</title>
<style>
/*
:link 表示没访问过的链接(正常的链接)
*/
a:link {
color: red;
font-size: 20px;
}
/*
:visited 表示访问过的链接
*/
a:visited {
color: green;
/*font-size: 50px; 不生效;由于隐私的原因,所以visited这个伪类只能修改链接的颜色*/
}
/*
:hover 表示鼠标移入的状态
*/
a:hover {
color: yellow;
font-size: 30px;
}
/*
:active 表示鼠标点击时的状态
*/
a:active {
color: orange;
}
</style>
</head>
<body>
<a href="https://www.baidu.com">访问过的链接</a>
<br/>
<a href="https://www.baidu123.com">未访问过的链接</a>
</body>
</html>
伪元素选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>伪元素选择器</title>
<style>
p {
font-size: 20px;
}
/*
伪元素:表示页面中一些特殊的并不真实的存在的元素(特殊的位置)
伪元素使用 :: 开头
::first-letter 第一个字母
::first-line 第一行
::selection 选中的内容
::before 元素的开始
::after 元素的最后
before和after必须结合content属性来使用
*/
p::first-letter {
font-size: 30px;
}
/*2022年5月29日演示不生效*/
/*p::first-line {
background-color: green;
}*/
p::selection {
background-color: greenyellow;
}
/*div::before{
content: "befor";
color: red;
}
div::after{
content: "after";
color: blue;
}*/
div::before {
content: '『';
color: red;
}
div::after {
content: '』';
color: red;
}
</style>
</head>
<body>
<q>hello</q>
<div>
Nice to meet you!
</div>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Atque velit modi veniam nisi veritatis tempore
laborum nemo ipsa itaque optio. Id odit consequatur mollitia excepturi, minus saepe nostrum vel porro.
</p>
</body>
</html>
样式的继承
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>样式的继承</title>
<style>
body{
font-size: 20px;
}
/*
样式的继承,为一个元素设置的样式同时也会应用到它的后代元素上。
继承是发生在祖先后代之间的。
继承的设计是为了方便我们的开发,
利用继承我们可以将一些通用的样式统一设置到共同的祖先元素上,
这样只需设置一次即可让所有的元素都具有该样式
注意:并不是所有的样式都会被继承:
比如 背景相关的,布局相关等的这些样式都不会被继承。
*/
p {
color: blue;
background-color: orange;
}
div {
color: red;
}
</style>
</head>
<body>
<p>
我是一个p元素
<span>我是p元素中的span</span>
</p>
<span>我是p元素外的span</span>
<div>
我是div
<span>
我是div中的span
<em>我是span中的em</em>
</span>
</div>
</body>
</html>
文本格式
单位
1、px
2、百分比
也可以使用一个百分数来表示一个大小,百分比是相对于父元素来说的,如果父元素使用的大小是16px,则100%就是16px,200%就是32px。
3、em
em和百分比类似,也是相对于父元素说的,1em就相当于100%,2em相当于200%,1.5em相当于150%。
颜色
1、在CSS中可以直接使用颜色的关键字来代表一种颜色。
17种颜色:
aqua、black、blue、fuchsia、gray、green、lime、maroon、navy、olive、orange、purple、red、silver、teal、white、yellow。
2、(1)十六进制颜色
用的最多的颜色是十六进制符号。一个颜色值,比如:#6600FF实际上包含了三组十六进制的数字。
上边的例子中66代表红色的浓度,00代表绿色的浓度,FF代表了蓝色的浓度。最后的颜色是由这些指定浓度的红绿蓝混合而成的。
如果每一组数中的两个数字都相同,就可以把十六进制的数字缩短为只有3个字符,如将#6600FF缩短为#60F。
(2)RGB值
也可以使用计算机中常用的RGB值来表示颜色。可以使用0255的数值,也可以使用0%100%的百分比数。
– RGB(100%,0%,0%)
– RGB(0,255,0)
第一个数表示红色的浓度,第二个数表示绿色浓度,第三个数表示蓝色的浓度。
(3)RGBA
RGBA表示一个颜色和RGB类似,只不过比RGB多了一个A(alpha)来表示透明度,透明度需要一个0-1的值。0表示完全透明,1表示完全不透明。
– RGBA(255,100,5,0.5)
文本大小
font-size:用来指定文字的大小。
文本字体
font-family
通过font-family可以同时指定多个字体。
浏览器会优先使用第一个,如果没有找到则使用第二个,以此类推。
斜体和粗体
font-style用来指定文本的斜体。
– 指定斜体:font-style:italic
– 指定非斜体:font-style:normal
font-weight用来指定文本的粗体。
– 指定粗体:font-weight:bold
– 指定非粗体:font-weight:normal
小型大写字母
font-variant属性可以将字母类型设置为小型大写。在该样式中,字母看起来像是稍微缩小了尺寸的大写字母。
– font-variant:small-caps
字体属性的简写
font可以一次性同时设置多个字体的样式。
语法:– font:加粗 斜体 小型大写 大小/行高 字体
这里前边几个加粗、斜体和小型大写的顺序无所谓,也可以不写,但是大小和字体必须写且必须写到后两个。
行间距
line-height用于设置行高,行高越大则行间距越大。
行间距 = line-height – font-size
大写化
text-transform样式用于将元素中的字母全都变成大小。
– 大写:text-transform:uppercase
– 小写:text-tansform:lowercase
– 首字母大写:text-transform:capitalize
– 正常:text-transform:none
文本的修饰
text-decoration属性,用来给文本添加各种修饰。通过它可以为文本的上方、下方或者中间添加线条。
可选值:
– underline
– overline
– line-through
– none
字母间距和单词间距
letter-spacing用来设置字符之间的间距。
word-spacing用来设置单词之间的间距。
这两个属性都可以直接指定一个长度或百分数作为值。正数代表的是增加距离,而负数代表减少距离。
对齐文本
text-align用于设置文本的对齐方式。
可选值:
– left:左对齐
– right:右对齐
– justify:两边对齐
– center:居中对齐
首行缩进
text-indent用来设置首行缩进。
该样式需要指定一个长度,并且只对第一行生效。