美文网首页HTML5&CSS3
第十五节:继承&属性值的计算过程

第十五节:继承&属性值的计算过程

作者: EndPein | 来源:发表于2020-04-10 14:36 被阅读0次

    继承

    子元素会继承父元素的某些CSS属性

    通常,跟文字内容相关的属性都可以被继承,也可以在MDN里面直接查看属性是否是可以继承的

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            .container {
                color: red;
                font-size: 2em;
                line-height: 2.5;
                background-color: lightblue;
            }
    
        </style>
    </head>
    <body>
        <div class="container">
            <p>
                Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptate impedit ipsa nobis quis consectetur sequi praesentium animi repellat sit, facere odio cupiditate? Eligendi, esse consectetur voluptate sunt similique ipsum quasi.
            </p>
    
            <ul>
                <li>Lorem.</li>
                <li>Id!</li>
                <li>Quibusdam.</li>
                <li>Veritatis!</li>
                <li>Temporibus?</li>
                <li>Aliquam.</li>
                <li>Nemo!</li>
                <li>Doloribus.</li>
                <li>Earum?</li>
                <li>Itaque?</li>
            </ul>
    
            <div>
                Lorem ipsum dolor sit amet consectetur adipisicing elit. Odit, a sequi non quas repellendus amet vero laudantium ex aut omnis possimus, natus, obcaecati eaque dignissimos ad similique tenetur commodi facere?
            </div>
        </div>
    
    
    </body>
    </html>
    

    属性值的计算过程

    浏览器是一个元素一个元素 依次渲染,顺序按照页面文档树形目录渲染的

    渲染每个元素的前提条件:该元素的所有CSS树形必须有值

    一个元素,从所有属性都没有值,到所有的属性都有值,这个计算过程叫做属性值计算过程
    例子:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            div{
                color: red;
            }
    
        </style>
    </head>
    <body>
        <div>
            <a href="">例子</a>
            <p>Lorem ipsum dolor sit.</p>
        </div>
    
    
    
    </body>
    </html>
    

    上面的例子中,a元素是没有继承div的颜色的,这是因为
    a元素在浏览器的默认样式表中已经确认了颜色和样式。所以可以在重置样式表中重置一下a元素的样式表

    a {
        /* 没有下划线,颜色继承父元素 */
        text-decoration: none;
        color: inherit;
    }
    

    特殊的2个CSS取值

    • inherit:手动(强制)继承,将父元素的值取出应用到该元素
    • innitial:初始值,将该属性设置为默认值
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            div{
                width: 100px;
                height: 100px;
                background-color: lightblue;
            }
    
            .mydiv {
                background-color: initial;
            }
    
        </style>
    </head>
    <body>
        <div class="mydiv"></div>
    </body>
    </html>
    

    相关文章

      网友评论

        本文标题:第十五节:继承&属性值的计算过程

        本文链接:https://www.haomeiwen.com/subject/jwlrmhtx.html