CSS 基础(下)

简介: CSS 基础(下)

七、文本属性



1. 文本水平对齐


text-align:
left / center / right


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo19</title>
    <style>
        .aaa {
            text-align: center;
        }
        .bbb {
            text-align: left;
        }
        .ccc {
            text-align: right;
        }
    </style>
</head>
<body>
    <div class="aaa">卡布达</div>
    <div class="bbb">呱呱蛙</div>
    <div class="ccc">车轮滚滚</div>
</body>
</html>


展示结果:


58b362b2482d40bfa05a4d79e1973693.png


2. 文本装饰


text-decoration:
none / overline / underline / line-through


展示1


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo20</title>
    <style>
        .aaa {
            text-decoration: overline;
        }
        .bbb {
            text-decoration: underline;
        }
        .ccc {
            text-decoration: none;
        }
        .ddd {
            text-decoration: line-through;
        }
    </style>
</head>
<body>
    <div class="aaa">卡布达</div>
    <div class="bbb">卡布达</div>
    <div class="ccc">卡布达</div>
    <div class="ddd">卡布达</div>
</body>
</html>



展示结果:


c9e5649cb70b46f69f5e3ec5f3531c92.png


展示2


在上一篇博客中,我提到关于 a 标签的一些用法。而当 a 标签写出来并展示之后,我们可以看到,它是刻板的形式 ( 带下划线,和固定颜色 ),这其实是由于 html 的语法和 不同浏览器显示所造成的结果。而我们就可以通过将 text-decoration 置成 none,并设置一些其他属性即可。


将下划线删除,在当今的网页设计很常见,例如一些带标签跳转的视频主页,就是这么做的。因为既然你避免不了使用链接,又要为了美观,这就是一个办法。


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo23</title>
    <style>
        a {
            text-decoration: none;
            font-size: 20px;
            color: black;
        }
    </style>
</head>
<body>
    <a href="#">点击链接</a>
</body>
</html>

展示结果:


c365263f78a342cd8a6d3f1a6ab105ff.png


3. 文本缩进


text-indent: 


① 缩进可以根据单位需求设置,单位可以使用 px 或 em.

② 1个 em 代表当前文字的尺寸大小,2个em 就是当前文字尺寸的两倍。

③ 缩进可以是负的,但会导致文字就冒出左边页面。


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo21</title>
</head>
<style>
    div {
        text-indent: 2em;
    }
</style>
<body>
    <div>
        其实当时在互联网界已经有过一些统一样式表语言的建议了, 
        但CSS是第一个含有“层叠”丰意的样式表语言。在CSS中,
        一个文件的样式可以从其他的样式表中继承。
        读者在有些地方可以使用他自己更喜欢的样式,
        在其他地方则继承或“层叠”作者的样式。
        这种层叠的方式使作者和读者都可以灵活地加入自己的设计,
        混合每个人的爱好。
    </div>
</body>
</html>


展示结果:


我故意通过滚轮将字体放大了,就是为了展示清楚缩进 2个字符。

( 下面的第一句话来自于百度 )


280dea921b7c4f44a97dec433728e5ec.png


4. 文本行高


line-height:


设置文本行高其实和我们平时使用的 word 中的设置行间距的意思是一样的,在 CSS 中,我们可以使用百分比、像素值、数值…来设置行间距。


展示1


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo1</title>
    <style>
        .aaa {
            line-height: 2;
        }
        .bbb {
            line-height: 150%;
        }
    </style>
</head>
<body>
    <p class="aaa">
        其实当时在互联网界已经有过一些统一样式表语言的建议了,
        但CSS是第一个含有“层叠”丰意的样式表语言。在CSS中,
        一个文件的样式可以从其他的样式表中继承。
    </p>    
    <p class="bbb">
        其实当时在互联网界已经有过一些统一样式表语言的建议了,
        但CSS是第一个含有“层叠”丰意的样式表语言。在CSS中,
        一个文件的样式可以从其他的样式表中继承。
    </p>   
</body>
</html>


展示结果:


f1e1d665d6b0463d9fd8cb5c7e416c16.png


展示2


将行高与当前元素的高度设置相等,可以使得文字垂直对齐。

下面的展示结果中,第二行文本就已垂直对齐。


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo2</title>
    <style>
        .aaa {
            background-color: gray;
            height: 50px;
            line-height: 20px;
        }
        .bbb {
            background-color: gray;
            height: 50px;
            line-height: 50px;
        }
    </style>
</head>
<body>
    <p class="aaa">卡布达 车轮滚滚 呱呱蛙</p>
    <p class="bbb">卡布达 车轮滚滚 呱呱蛙</p>
</body>
</html>


展示结果:


988c67abf1834df58eef9ff4e8bdf49b.png


八、背景属性



1. 背景颜色


background-color:


background-color 所能设置的值,和前文中提到的 color 是一样的,所以我就不再赘述此属性的用法了,下面展示常见的写法:


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo3</title>
    <style>
        div {
            background-color: green;
        }
        .aaa {
            background-color: red;
        }
        .bbb {
            background-color: rgb(0, 200, 250);
        }
        .ccc {
            background-color: transparent;
        }
        p {
            background-color: transparent;
        }
    </style>
</head>
<body>
    <div>
        <div class="aaa">卡布达</div>
        <div class="bbb">车轮滚滚</div>
        <div class="ccc">呱呱蛙</div>
    </div>
    <p>飞翔机器人</p>
</body>
</html>


值得注意的是:我们将 background-color 设置为 transparent,即表示透明的意思。但当【ccc】属性的父类 div 已经被设置成绿色的时候,就会让【ccc】属性也变成绿色了。

当然,如果【ccc】属性的父类没有被实现背景颜色,就还会变成透明。


展示结果:


38acf5e989784e22a3f7b442b593a720.png


2. 背景图片


background-image: url();


上面的 url 中,需要填写路径。


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo4</title>
    <style>
        p {
            color: red;
            font-size: 300px;
            background-image: url(123.png);
            height: 1500px;
        }
    </style>
</head>
<body>
    <p>卡布达</p>
</body>
</html>


注意


因为我们是对标签p 进行修饰的,所以如果我们想要文字和图片在一起的效果,就需要在 p 选择器设置样式的时候,加点设置,比方说:整个高度需设置更大一些。然而最终我们看到,展示的背景图片却是多张图片组合在一起的,这其实是因为默认平铺的效果,因为当前浏览器可能觉得,需要将整个 p 标签填满,在后面我们会提到如何取消平铺。


展示结果:


image.png


3. 背景图片平铺


background-repeat: 
no-repeat    (不平铺)
repeat       (平铺)
repeat-x     (水平平铺)
repeat-y     (垂直平铺)


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo5</title>
    <style>
        p {
            color: red;
            font-size: 300px;
            height: 1500px;
            background-image: url(123.png);
            background-repeat: no-repeat;
            background-color: aquamarine;
        }
    </style>
</head>
<body>
    <p>卡布达</p>
</body>
</html>


下图展示了背景图片不平铺的效果;此外,如果背景图片与背景颜色共存的情况下,背景图片会将背景颜色进行覆盖。


展示结果:


f378137c84c740e7848dfa21100bdeb3.png


4. 背景图片尺寸


background-size:


background-size 属性可以设置的值有很多,如:像素值、百分比、cover、contain…


展示1


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo6</title>
    <style>
        p {
            color: red;
            font-size: 100px;
            height: 1500px;
            background-image: url(123.png);
            background-repeat: no-repeat;
            background-color: aquamarine;
            background-size: 1300px, 1300px;
        }
    </style>
</head>
<body>
    <p>卡布达</p>
</body>
</html>


通过像素值可以直接对背景图片进行设置,但我们必须明确,背景图片是用来修饰 p 标签的,所以我们必须以当前的 p标签高度为基准。


image.png

展示2


但我们将 background-size 属性分别设置为 cover 和 contain 的时候


background-size: cover;
background-size: contain;


展示结果:


f9e4ada3e3b54254ac8c804e691a43b0.png


5. 背景图片位置


background-position: x, y;


x 和 y 都可以填写以下的三种参数:

① 方位名词:( top, left, right, bottom )

② 精确单位:坐标或百分比 ( 以左上角为原点 )

③ 混合单位:同时包含方位名词和精确单位


注意:上面的 x 和 y 是以 x轴往右为正方向,y轴往下为正方向的。

而不是像高等数学中的 y轴往上为正方向。


3129a65411b7476ca8c843d29a44bff8.png


展示


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo6</title>
    <style>
        p {
            color: red;
            font-size: 300px;
            height: 1500px;
            background-image: url(123.png);
            background-repeat: no-repeat;
            background-color: aquamarine;
            background-position: center,center;
        }
    </style>
</head>
<body>
    <p>卡布达</p>
</body>
</html>


这里就不为大家演示了,这里的图片放置方法较为多变,小伙伴可以自己试一下。


展示结果:


9fd99b9928024a96a1e9bc748299b76e.png

九、圆角矩形



border-radius: length;


其中,length 是内切圆的半径,其数值越大,弧线越弯曲。


展示1


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo8</title>
    <style>
        p {
            background-color: rgb(0, 250, 150);
            height: 300px;
            width:  300px;
            border-radius: 250px;
        }
    </style>
</head>
<body>
    <p></p>
</body>
</html>


我们将正方形的背景转换成圆形的背景,只需要将 border-radius 设置为宽度的一半即可。


展示结果:


2847d4d343104926b05fea44294cfc17.png


展示2


设计一个点击按钮


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo8</title>
    <style>
        p {
            background-color: gray;
            font-size: 30px;
            height: 60px;
            width:  200px;
            border-radius: 30px;
            text-align: center;
            line-height: 60px;
        }
        p:hover {
            background-color: yellowgreen;
        }
    </style>
</head>
<body>
    <p>请点击按钮</p>
</body>
</html>


解析代码


① 通过 height 和 width 属性设置了当前 p标签 的最大高度和宽度。

② 通过 border-radius 属性设置了高度一半的圆角。

③ 通过 text-align 属性设置了水平对齐,line-height 属性设置了垂直对齐。

④ 通过 p:hover 这个伪类选择器设置了鼠标放置时换色。


展示结果:


f102429119db43da94468ed383d6bf88.png


展示3


border-radius: 50px 20px 50px 0px;


上面是按照顺时针划分圆角的,所以与下面四行是等价的。


border-top-left-radius:50px;
border-top-right-radius:20px;
border-bottom-right-radius:50px;
border-bottom-left-radius:0px;


展示结果:


b940d57f3111415f93cbf63c7a99c3d2.png

目录
相关文章
|
前端开发 JavaScript 容器
CSS基础
CSS基础
88 0
|
前端开发 JavaScript 容器
通俗重制系列--CSS基础
通俗重制系列--CSS基础
105 0
|
前端开发 JavaScript Java
计算机二级web题目(4)--CSS基础
计算机二级web题目(4)--CSS基础
116 1
|
存储 Web App开发 缓存
前端面试题整合(HTML,CSS等基础篇)
前端面试题整合(HTML,CSS等基础篇)
128 0
|
前端开发
实验:CSS+Div基础 - 预习报告
网页设计技术实验预习报告。
179 1
实验:CSS+Div基础 - 预习报告
|
Web App开发 前端开发 Windows
CSS基础1 | 青训营笔记
本期作为复习CSS的笔记,比较基础。当然即便最基础的东西也欢迎各路高手指点,以防地基不稳大厦崩塌hhh
CSS基础1 | 青训营笔记
|
前端开发
CSS基础之选择器
总所周知,css可以为网页设置多种多样的样式,那怎么样可以精确为每一个html标签设置相应的样式呢?
|
前端开发 人机交互
Web开发及人机交互导论 实验三 CSS+DIV基础
Web开发及人机交互导论 实验三 CSS+DIV基础
139 0
Web开发及人机交互导论 实验三 CSS+DIV基础
|
前端开发 JavaScript
CSS基础理解(1)
CSS基础理解(1)
78 0
|
前端开发
CSS基础-塌陷及定位
clear:right; 右侧不允许有浮动元素
94 0