zoukankan      html  css  js  c++  java
  • CSS 引入方式

    HTML 中引入 CSS 的方式

    有 4 种方式可以在 HTML 中引入 CSS。其中有 2 种方式是在 HTML 文件中直接添加 CSS 代码,另外两种是引入 外部 CSS 文件。下面我们就来看看这些方式和它们的优缺点。

    内联方式

    内联方式指的是直接在 HTML 标签中的 style 属性中添加 CSS。

    示例:

    <div style="background: red"></div>
    

    这通常是个很糟糕的书写方式,它只能改变当前标签的样式,如果想要多个 <div> 拥有相同的样式,你不得不重复地为每个 <div>添加相同的样式,如果想要修改一种样式,又不得不修改所有的 style 中的代码。很显然,内联方式引入 CSS 代码会导致 HTML 代码变得冗长,且使得网页难以维护。

    嵌入方式

    嵌入方式指的是在 HTML 头部中的 <style> 标签下书写 CSS 代码。

    示例:

    <head>
        <style>
    
        .content {
            background: red;
        }
    
        </style>
    </head>
    

    嵌入方式的 CSS 只对当前的网页有效。因为 CSS 代码是在 HTML 文件中,所以会使得代码比较集中,当我们写模板网页时这通常比较有利。因为查看模板代码的人可以一目了然地查看 HTML 结构和 CSS 样式。因为嵌入的 CSS 只对当前页面有效,所以当多个页面需要引入相同的 CSS 代码时,这样写会导致代码冗余,也不利于维护。

    链接方式

    链接方式指的是使用 HTML 头部的 <head> 标签引入外部的 CSS 文件。

    示例:

    <head>
        <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    

    这是最常见的也是最推荐的引入 CSS 的方式。使用这种方式,所有的 CSS 代码只存在于单独的 CSS 文件中,所以具有良好的可维护性。并且所有的 CSS 代码只存在于 CSS 文件中,CSS 文件会在第一次加载时引入,以后切换页面时只需加载 HTML 文件即可。

    导入方式

    导入方式指的是使用 CSS 规则引入外部 CSS 文件。

    示例:

    <style>
        @import url(style.css);
    </style>
    

    比较链接方式和导入方式

    加载css的两种方式:<link> @import

      • 方式
           <link rel="stylesheet" href="a.css" />
            @import url("b.css");
      • 对比解释
        • 老祖宗:link属于XHTML标签,而@import是CSS提供的;
          link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。
        • 浏览器兼容性:import只在IE5以上才能识别,而link是XHTML标签,无兼容问题;
        • 加载顺序:页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载;
        • 使用import时需要注意的地方:该规则必须在样式表头部最先声明。并且其后的分号是必需的,如果省略了此分号,外部样式表将无法正确导入,并会生成错误信息。
        • 关于优先级
          • 设置样式的方式:行内样式、内联样式、外联样式、导入样式
          • 当@import与内联样式<style></style>一起时,内联样式>导入样式(使用import必须在样式表头部最先声明)
          • 除了上述情况,其它时候以样式加载顺序为参考,后加载的优先级越高。
            记住当测试时,必须对同一个元素使用同样的选择符进行测试,否则会出现选择符权重的干扰。否则得根据选择符来判断

    小结:我们应尽量使用 <link> 标签导入外部 CSS 文件,避免或者少用使用其他三种方式。

  • 相关阅读:
    LeetCode 1
    Thinking in Java学习杂记(第7章)
    工程优化部分概念
    Thinking in Java学习杂记(5-6章)
    Thinking in Java学习杂记(1-4章)
    python中map()和dict()的用法
    JavaWeb高级编程(下篇)
    对CSDN的理性吐槽
    CSDN博客已经打不开了
    大连交大教务一键教学评价
  • 原文地址:https://www.cnblogs.com/chengdabelief/p/6506452.html
Copyright © 2011-2022 走看看