CSS中的背景以及三大特性的学习

举报
相信光的奥特王小懒 发表于 2022/09/21 22:21:22 2022/09/21
【摘要】 CSS的三大特性的学习是非常关键的

1. 背景半透明

background: rgba (0,0,0, 0.3);

  • 最后一个参数是alpha透明度,取值范围在0~1之间
  • 我们习惯把0.3的0省略掉,写为background: rgba(0,0,0,.3);
  • 注意:背景半透明是指盒子背景半透明,盒子里面的内容不受影响

rgba:表示的红色、绿色、黑色、以及透明度alpha

2. 背景总结



3. 经典案例

练习价值:

  • 链接属于行内元素,但是此时需要宽度高度,因此需要模式转换
  • 里面文字需要水平居中和垂直居中.因此需要单行文字垂直居中的代码.
  • 链接里面需要设置背景图片.因此需要用到背景的相关属性设置.
  • 鼠标经过变化背景图片,因此需要用到链接伪类选择器.
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>综合案例-五彩导航</title>
    <style>
        .nav a {
            display: inline-block;
            width: 120px;
            height: 58px;
            background-color: pink;
            text-align: center;
            line-height: 48px;
            color: #fff;
            text-decoration: none;
        }

        .nav .bg1 {
            background: url(images/bg1.png) no-repeat;
        }

        .nav .bg1:hover {
            background-image: url(images/bg11.png);
        }

        .nav .bg2 {
            background: url(images/bg2.png) no-repeat;
        }

        .nav .bg2:hover {
            background-image: url(images/bg22.png);
        }
    </style>
</head>

<body>
    <div class="nav">
        <a href="#" class="bg1">五彩导航</a>
        <a href="#" class="bg2">五彩导航</a>
        <a href="#">五彩导航</a>
        <a href="#">五彩导航</a>
        <a href="#">五彩导航</a>
    </div>
</body>
</html>

4. CSS三大特性

4.1 层叠性

相同选择器给设置相同的样式,此时一个样式就会覆盖(层叠)另一个冲突的样式。层叠性主要解决样式冲突的问题

层叠性原则︰ 样式冲突,遵循的原则是就近原则,哪个样式离结构近,就执行哪个样式样式不冲突,不会层叠

4.2 继承性





可以直接在CSS样式中给div赋值然后p继承div的值

CSS中的继承:子标签会继承父标签的某些样式,如文本颜色和字号。简单的理解就是︰子承父业。

恰当地使用继承可以简化代码,降低CSS样式的复杂性

子元素可以继承父元素的样式( text- , font-, line-这些元素开头的可以继承,以及color属性)

4.3 行高的继承

行高的继承性


body {
font : 12px/1.5 Microsoft YaHei ;}
  • 行高可以跟单位也可以不跟单位

  • 如果子元素没有设置行高,则会继承父元素的行高为1.5

  • 此时子元素的行高是:当前子元素的文字大小*1.5

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>行高的继承</title>
    <style>
        body {
            color: black;
            /* font: 12px/24px 'Microsoft YaHei'; */
            font: 12px/1.5 'Microsoft YaHei';
        }
        div {
            /* 子元素继承了父元素 body 的行高 1.5 */
            /* 这个1.5 就是当前元素文字大小 font-size 的1.5倍   所以当前div 的行高就是21像素 */
            font-size: 14px; 
        }
        p {
            /* 1.5 * 16 =  24 当前的行高 */
            font-size: 16px;
        }
    </style>
</head>
<body>
    <div>吉林大学王小懒</div>
    <p>吉林大学王小懒</p>
</body>
</html>

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。