主题
  • 默认模式
  • 浅蓝色模式
  • 淡红色模式
  • 深夜模式

如何插入样式表

在网页开发中,插入样式表的方法有三种,它们各有优势,适用于不同的开发场景:

  • 外部样式表(External style sheet)
  • 内部样式表(Internal style sheet)
  • 内联样式表(Inline style)

外部样式表

当众多页面需要统一应用样式时,外部样式表无疑是最佳选择。借助外部样式表,只需修改一个文件,就能轻松改变整个网站的外观。

在每个页面中,通过<link>标签实现与样式表的链接。并且,该<link>标签需放置在文档的头部部分。

<head>
    <link rel="stylesheet" type="text/css" href="mystyle.css">
</head>
  • 浏览器会读取 mystyle.css 文件中的样式声明,然后依据这些声明对文档进行格式化处理。
  • 外部样式表可以在任何文本编辑器中进行编辑。文件不能包含任何的 html 标签。样式表应该以.css扩展名进行保存。

下面是一个样式表文件的例子:

hr {color:sienna;}
p {margin-left:20px;}
body {background-image:url("/images/back40.gif");}

不要在属性值与单位之间留有空格(如:"margin-left: 20 px" ),正确的写法是 "margin-left: 20px" 。


内部样式表

当单个文档需要应用独特样式时,更适合使用内部样式表。通过在文档头部使用style标签,即可定义内部样式表,具体示例如下:

<head>
<style>
    hr {color:sienna;}
    p {margin-left:20px;}
    body {background-image:url("images/back40.gif");}
</style>
</head>

内联样式表

在网页开发过程中,内联样式虽能便捷地为单个元素设置样式,但它把样式表现和内容直接混在一起,致使样式表的诸多优势,如高效复用、集中管理以及后期便捷维护等大打折扣。

若你想运用内联样式,只需在对应的 HTML 标签内添加样式(style)属性即可。这个 style 属性相当强大,它能够容纳任意 CSS 属性。

例如,借助内联样式改变段落的文本颜色以及左外边距:

<p style="color:sienna;margin-left:20px">这是一个段落。</p>

多重样式

在 CSS 样式表的应用过程中,当同一个选择器在多个样式表中定义了相同属性时,最终生效的属性值,会依据样式表的特异性规则来确定,优先继承来自更具体样式表中的属性值。这种机制确保了样式渲染能够依据开发者的意图,灵活且精准地呈现。

例如,外部样式表拥有针对 h3 选择器的三个属性:

h3{
    color:red;
    text-align:left;
    font-size:8px;
}

而内部样式表拥有针对 h3 选择器的两个属性:

h3{
    text-align:right;
    font-size:20px;
}

假如拥有内部样式表的这个页面,同时拥有外部样式表链接,那么 h3 得到的样式是:

h3{
    color:red;
    text-align:right;
    font-size:20px;
}

在相同选择器定义的样式时,后面定义的样式会覆盖前面的。

该 h3 元素的颜色属性会沿用外部样式表,而文本对齐方式与字体大小则会被内部样式表中的对应规则覆盖。


多重样式优先级

在网页开发领域,样式表提供了丰富灵活的方式来定义样式信息:

  • 内联样式:在单个 HTML 元素中,对当前元素的样式进行精准控制。
  • 内部样式表:在 HTML 文档的<head>头部元素中,对当前页面的样式进行集中设置。
  • 外部样式表:将样式信息单独存储在外部 CSS 文件里,实现多个页面样式的统一管理与复用。
  • 多外部样式表引用:在同一个 HTML 文档内,引用多个外部样式表,满足更为复杂、多样化的网页样式设计需求。

一般情况下,优先级如下:

(内联样式)Inline style > (内部样式)Internal style sheet >(外部样式)External style sheet > 浏览器默认样式

实例代码 运行代码
复制
<head>
    <!-- 外部样式 style.css -->
    <link rel="stylesheet" type="text/css" href="/uploads/20250401/style.css"/>

    <!-- 内部样式 -->
    <style type="text/css">
        h3{color:green;}
    </style>
</head>
<body>
    <h3>显示绿色,是内部样式</h3>
</body>

提示:上述实例中,如果你将外部样式放在内部样式的后面,则外部样式将覆盖内部样式。




评论区 0
发表评论