整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          頁面導入樣式時,使用link和@import有什么區

          頁面導入樣式時,使用link和@import有什么區別?

          擊右上方紅色按鈕關注“web秀”,讓你真正秀起來

          先回答區別,再擴展一下。

          link和@import有什么區別

          區別1:link是XHTML標簽,除了加載CSS外,還可以定義RSS等其他事務;@import屬于CSS范疇,只能加載CSS。

          區別2:link引用CSS時,在頁面載入時同時加載;@import需要頁面網頁完全載入以后加載。所以會出現一開始沒有css樣式,閃爍一下出現樣式后的頁面(網速慢的情況下)

          區別3:link是XHTML標簽,無兼容問題;@import是在CSS2.1提出的,低版本的瀏覽器不支持。

          區別4:link支持使用Javascript控制DOM去改變樣式;而@import不支持。在html設計制作中,css有四種引入方式。

          方式一: 內聯樣式

          內聯樣式,也叫行內樣式,指的是直接在 HTML 標簽中的 style 屬性中添加 CSS。

          示例:

          <div style="display: none;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 頭部的 標簽引入外部的 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樣式中

          @charset "utf-8";
          @import url(style.css);
          *{ margin:0; padding:0;}
          .notice-link a{ color:#999;}
          

          比較鏈接方式和導入方式

          鏈接方式(下面用 link 代替)和導入方式(下面用 @import 代替)都是引入外部的 CSS 文件的方式,下面我們來比較這兩種方式,并且說明為什么不推薦使用 @import。

          1、link 屬于 HTML,通過 <link> 標簽中的 href 屬性來引入外部文件,而 @import 屬于 CSS,所以導入語句應寫在 CSS 中,要注意的是導入語句應寫在樣式表的開頭,否則無法正確導入外部文件;

          2、@import 是 CSS2.1 才出現的概念,所以如果瀏覽器版本較低,無法正確導入外部樣式文件;

          3、當 HTML 文件被加載時,link 引用的文件會同時被加載,而 @import 引用的文件則會等頁面全部下載完畢再被加載;

          小結:我們應盡量使用 <link> 標簽導入外部 CSS 文件,避免或者少用使用其他三種方式。

          喜歡小編或者覺得小編文章對你有幫助的,可以點擊一波關注哦!同時,要源碼的小伙伴可以點擊下方“了解更多”。

          原文鏈接:https://segmentfault.com/a/1190000003866058

          :import標簽
          完成類似java的import的功能:
          馬克- to-win:馬克 java社區:防盜版實名手機尾號: 73203。

          例 2.2.5
          <%@ page contentType="text/html; charset=GBK"%>
          <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
          <html>
          <body>
          主頁面
          <c:import url="hello.jsp">
          <c:param name="name" value="mark-to-win" />
          </c:import>
          </body>
          </html>
          hello.jsp:

          <%@ page contentType="text/html; charset=GBK" %>
          <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
          <br>
          被包的頁面
          <c:out value="被import的html"/>
          <c:out value="${param.name}"/>
          <br>




          運行jsp后,瀏覽器中輸出結果是:

          主頁面
          被包的頁面被import的html mark-to-win

          篇幅有限更多請見擴展鏈接:www.mark-to-win.com/tutorial/jsp_5_cimportExample.html

          Web 開發的浩瀚海洋中,CSS 猶如點睛之筆,為網頁增光添彩。而引入 CSS 樣式的方式,也決定了網頁渲染的效率和代碼的可維護性。 link 和 @import 作為兩種常見的 CSS 引入方式,今天就來一場正面對決,看看誰才是你的最佳選擇!

          Round 1:身份揭秘,從出身說起

          • link :HTML 的正牌標簽,身兼多職,不僅能引入 CSS,還能定義 RSS、rel 鏈接屬性等。可謂是 HTML 家族中的“多面手”。
          • @import :CSS 語法規則的忠實守護者,專注于導入樣式表,是 CSS 世界的“專業選手”。

          Round 2:速度之爭,加載順序大比拼

          • link :與 HTML 標簽并肩作戰,頁面加載時同步加載,贏在起跑線。
          • @import : 姍姍來遲,頁面加載完畢后才開始加載,容易造成頁面閃爍,用戶體驗稍遜一籌。

          Round 3:兼容性考驗,誰更勝一籌?

          • link : HTML 元老級標簽,不存在兼容性問題,穩如泰山。
          • @import :CSS2.1 語法,存在一定的兼容性問題,在老舊瀏覽器中可能會出現樣式加載失敗的情況。

          Round 4:控制權爭奪,DOM 操作誰更強?

          • link : 受 JavaScript 和 DOM 的絕對控制,可以通過修改 link 標簽屬性動態改變樣式,靈活多變。
          • @import :游離于 DOM 之外,無法通過 JavaScript 直接控制,顯得有些“高冷”。

          Round 5:權重較量,誰的影響力更大?

          • link :在樣式層疊中擁有更高的權重,其定義的樣式會覆蓋 @import 引入的樣式。

          終極 PK:示例代碼大 showdown

          <!DOCTYPE html>
          <html>
          <head>
            <title>link vs @import</title>
            <link rel="stylesheet" href="style.css"> 
          </head>
          <body>
            <h1>Hello world</h1>
          </body>
          </html>
          
          /* style.css */
          @import url("other-style.css");
          

          源碼解析

          在瀏覽器解析 HTML 文件時,會依次解析 link 標簽和 style 標簽,并下載相應的 CSS 文件。@import 規則會在 CSS 文件解析時被執行,瀏覽器會再次發送請求下載 other-style.css 文件。

          總結:link更勝一籌

          綜上所述,link 標簽憑借其加載速度快、兼容性好、可控性強等優勢,在 CSS 引入方式的較量中更勝一籌,是大多數場景下的最佳選擇。

          當然,@import 也并非一無是處,在某些特殊情況下,它也能發揮作用。例如,當我們需要根據不同的條件加載不同的樣式表時,可以使用 @import 結合 JavaScript 實現動態加載。

          #頭條創作挑戰賽#


          主站蜘蛛池模板: 无码人妻一区二区三区在线 | 成人无码一区二区三区| 精品一区二区三区无码免费直播| 久久无码一区二区三区少妇 | 久久国产精品亚洲一区二区| 在线观看一区二区精品视频| 午夜无码一区二区三区在线观看 | 亚洲AV日韩AV天堂一区二区三区| 蜜桃传媒一区二区亚洲AV| 一区二区三区高清在线| 亚洲国产专区一区| 国产福利91精品一区二区三区| 肥臀熟女一区二区三区| 成人精品视频一区二区三区| 国产在线观看一区二区三区| 国产在线精品一区二区| 日本一区二区三区中文字幕| 国产av夜夜欢一区二区三区| 麻豆视传媒一区二区三区| 国产SUV精品一区二区四| 中文字幕一区在线| 麻豆一区二区99久久久久| 亚洲高清一区二区三区电影| 亚洲AV无码一区二区三区国产| 无码一区二区三区| 无码精品人妻一区| 日韩免费视频一区| 国产一区二区在线观看app | 亚洲乱色熟女一区二区三区蜜臀| 日韩人妻无码一区二区三区综合部 | 亚洲国产精品一区二区第四页 | 日本一区二区三区中文字幕| 国产成人无码一区二区三区 | 色噜噜AV亚洲色一区二区| 婷婷国产成人精品一区二| 亚洲无圣光一区二区| 国产一区二区三区免费| 美女福利视频一区| 香蕉免费一区二区三区| 手机看片福利一区二区三区| 精品成人av一区二区三区|