整合營銷服務商

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

          免費咨詢熱線:

          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>
          

          比較鏈接方式和導入方式

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

          • link 屬于 HTML,通過 <link> 標簽中的 href 屬性來引入外部文件,而 @import 屬于 CSS,所以導入語句應寫在 CSS 中,要注意的是導入語句應寫在樣式表的開頭,否則無法正確導入外部文件;
          • @import 是 CSS2.1 才出現的概念,所以如果瀏覽器版本較低,無法正確導入外部樣式文件;
          • 當 HTML 文件被加載時,link 引用的文件會同時被加載,而 @import 引用的文件則會等頁面全部下載完畢再被加載;

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

          說,我想問問小伙伴們你知道幾種往JS數組中添加元素的方法呢?下面我們一起去看看吧。

          第一種:push() 方法可向數組的末尾添加一個或多個元素,并返回新的長度

          特點:

          1.尾部 添加一個或者多個元素

          2.返回數組新的長度

          3. 該方法會改變數組長度,直接修改原數組

          <script>
                  let arr = [1,2,3,4];
                  // push()方法
                  let newArr = arr.push(5);
                  console.log("newArr",newArr);//添加一個元素5,返回長度5
                  console.log("arr",arr);//[1,2,3,4,5]
              </script>

          也可以添加多個元素,如添加2個元素5、6 arr.push(5,6)

           <script>
                  let arr = [1, 2, 3, 4];
                  // push()方法
                  let newArr = arr.push(5, 6);
                  console.log("newArr", newArr);//添加兩個元素5、6,返回長度6
                  console.log("arr", arr);//[1,2,3,4,5,6]
              </script>

          也可以往數組中添加對象,arr.push({})

          <script>
                  let arr = [1, 2, 3, 4];
                  // push()方法
                  let newArr = arr.push({});//添加 空對象
                  console.log("newArr", newArr);//5
                  console.log("arr", arr);//[1,2,3,4,{}]
           </script>

          第二種:unshift() 方法可向數組的開頭添加一個或更多元素,并返回新的長度

          特點:與push方法類似,只不過添加到頭部

            <script>
                  let arr = [1, 2, 3, 4];
                  let newArr = arr.unshift(0);//添加元素0
                  console.log("newArr", newArr);//5
                  console.log("arr", arr);//[0,1,2,3,4]
              </script>

          第三種:splice(參數1,參數2,參數3)方法

          參數1:索引位置

          參數2:添加元素的個數

          參數3:要添加的元素

           <script>
                  let arr = [1, 2, 3, 4];
                  let newArr = arr.splice(4,0,5);
                  console.log("newArr", newArr);//[]
                  console.log("arr", arr);//[1,2,3,4,5]
              </script>

          第四種:arr.length

           <script>
                  let arr = [1, 2, 3, 4];
                  let newArr = (arr[arr.length] = 6);
                  console.log("newArr", newArr);//6
                  console.log("arr", arr);//[1,2,3,4,6]
              </script>

          第五種:concat()方法,返回一個新數組,不會改變原數組

          添加多個元素:

          <script>
                  let arr = [1, 2, 3, 4];
                  let newArr = arr.concat(5,6,7);
                  console.log("newArr", newArr);//[1,2,3,4,5,6,7]
                  console.log("arr", arr);//[1,2,3,4]
              </script>

          添加數組:

           <script>
                  let arr = [1, 2, 3, 4];
                  let newArr = arr.concat([10,20]);
                  console.log("newArr", newArr);//[1,2,3,4,10,20]
                  console.log("arr", arr);//[1,2,3,4]
              </script>

          第六種:使用展開運算符 [...[],50,60],返回新數組,不會改變原數組

          ss-in-js是什么?

          當大家聽到這個詞或許能猜到是在js里面寫編寫css樣式,可我們以前都是在html內或引用外部css文件樣式,為什么現在可以在js里編寫css樣式呢?

          先讓我們看看“關注點分離”的概念,以前在開發前端項目里面,關注點分離是對只與“特定概念、目標”相關聯的軟件組成部分進行“標識、封裝和操縱”的能力。


          它代表標識、封裝和操縱關注點的能力,是處理復雜性的一個原則。

          由于關注點混雜在一起會導致復雜性大大增加,能夠把不同的關注點分離開來,分別處理就是處理復雜性的一個原則,一種方法。

          在前端開發的領域,把html、css、js分開成三個獨立部分,方便維護,各自解耦,降低復雜度。


          通俗的理解,css-in-js就是把css寫進js。

          即不寫“行內樣式”和“行內腳本”。

          為什么用css-in-js?

          相對于js的突飛猛進,css的進化就比較緩慢,隨著前端react、vue等框架模塊化概念的出現,改變了獨立三個部分的局面。

          html寫到js里面,使html的弱化與js的強化成為了一種趨勢,頁面也被切分成一個個模塊。

          這時候對css來講,獨立打包似乎并不是那么的理所當然了,一個模塊有它自己的html、js、css才是更好的切分頁面功能的方式。

          現在隨著組件化概念的流行,css 的弱化與 js 的強化趨勢也在慢慢形成,從組件層面維護css樣式的需求日益增大。


          css-in-js就是在組件內部使用js對css進行了抽象,可以對其聲明和加以維護。這樣不僅降低了編寫css樣式帶來的風險,也讓開發變得更加輕松。

          css-in-js理念,即是摒棄原有的用.css文件書寫樣式,而把樣式寫進js里面,這樣就可以做到一個組件對應一個文件、一個文件便是一個組件,一次開發公共使用的目的。

          目前有很多基于css-in-js思想衍生出來的第三方庫,如styled-components、emotion、jss、styled-jsx等等。


          主站蜘蛛池模板: 人妻精品无码一区二区三区| 国产成人片视频一区二区| 国产成人精品一区在线| 香蕉久久av一区二区三区| 国产日韩精品视频一区二区三区| 国产一区美女视频| 亚洲中文字幕在线无码一区二区| 无码人妻久久一区二区三区蜜桃| 日韩一区二区在线观看视频| 国产在线精品一区二区在线看| 秋霞无码一区二区| A国产一区二区免费入口| 国产婷婷色一区二区三区深爱网| 日韩免费无码一区二区三区| 精品国产日韩亚洲一区| 日韩在线观看一区二区三区| 日韩AV无码久久一区二区| 久久亚洲中文字幕精品一区| 色综合久久一区二区三区| 色噜噜狠狠一区二区| 国产成人精品一区二区秒拍| 国产A∨国片精品一区二区| 日韩精品福利视频一区二区三区| 亚洲天堂一区在线| 国产视频一区在线观看| 国产精品污WWW一区二区三区| 春暖花开亚洲性无区一区二区 | 视频在线观看一区| 色窝窝免费一区二区三区| 亚洲日本乱码一区二区在线二产线 | 农村乱人伦一区二区| 国产免费无码一区二区| 一区二区三区影院| 一区 二区 三区 中文字幕 | 国产一区二区三区在线免费| 亚洲丶国产丶欧美一区二区三区| 人妻无码一区二区三区AV| 久久se精品动漫一区二区三区| 成人乱码一区二区三区av| 国产激情一区二区三区 | 一区二区三区福利|