CSS基礎

  • CSS全稱層疊樣式表(Cascading Style Sheets)

CSS的幾種引入方式

  1. 行間樣式(寫在html標簽的style屬性里)
    <input type="text" style="color:#ccc;width:120px">

  2. 內部樣式(寫在<head></head>里面,以<style>...</style>標簽包裹。比)
    <!doctype html>
    <html>
    <head>
    <meta charset=“utf-8”>
    <style>
    p {
    font-size: 20px
    }
    </style>
    </head>
    <body>
    <p>你好!</p>
    </body>
    </html>

  3. 外部樣式:也稱鏈接樣式,寫在<head></head>里面。以link定義,(rel="stylesheet"和tbye="text/css"為規范必寫,詳細原因現在的我也不知道), css樣式寫在另一個文件夾取名為style(文件名可以隨便取但推薦是英文)。比如:
    <link rel="stylesheet" type="text/css">

  4. @import 引用CSS(放在<style></style>之間)

    <style type="text/css">
       @import url(引入的樣式表的路徑);
    </style>
    

link 和@import的區別

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

  • 差別1:ink屬于HTML標簽,而@import完全是CSS提供的一種方式。
    link標簽除了可以加載CSS外,還可以做很多其它的事情,比如定義RSS,定義rel連接屬性等,@import就只能加載CSS了。
  • 差別2:加載順序的差別。當一個頁面被加載的時候(就是被瀏覽者瀏覽的時候),link引用的CSS會同時被加載,而@import引用的CSS會等到頁面全部被下載完才被加載。所以有時候瀏覽@import加載CSS的頁面時開始會沒有樣式(就是閃爍),網速慢的時候還挺明顯。
  • 差別3:兼容性的差別。由于@import是CSS2.1提出的,所以低版本瀏覽器不支持,@import只有在IE5以上的才能識別,而link標簽無此問題。
  • 差別4:使用dom控制樣式時的差別。當使用javascript控制dom去改變樣式的時候,只能使用link標簽,因為@import不是dom可以控制的。
    從上面的分析來看,還是使用link標簽比較好。

以下這幾種文件路徑分別用在什么地方,代表什么意思?

css/a.css 相對路徑:當前文件夾內CSS目錄下的a.css文件
./css/a.css 相對路徑:當前文件夾內CSS目錄下的a.css文件
b.css 相對路徑:當前目錄下的b.css文件
../imgs/a.png 相對路徑:當前目錄的上級目錄內的images目錄下的a.png文件
/Users/hunger/project/css/a.css 絕對路徑:本地/Users/hunger/project/css/目錄下的 a.css文件
/static/css/a.css 網站路徑:當前服務器根目錄下的/static/css的a.css文件
http://cdn.jirengu.com/kejian1/8-1.png 網絡路徑:通過該路徑可以找到cdn.jirengu.com域名下kejian1目錄下的8-1.png文件

如果我想在js.jirengu.com上展示一個圖片,需要怎么操作?

  1. 可以直接將圖片上傳到服務器,在頁面使用這張圖片
  2. 如果這個圖片本來就存在網絡上其他的服務器上,可以直接使用圖片的網絡絕對路徑鏈接的方式在頁面上添加url引用這張圖片

HTML和 CSS的書寫規范

HTML:
  1. 標簽名必須使用小寫字母。
  2. 對于無需自閉合的標簽,不允許自閉合。
  3. 對 HTML5 中規定允許省略的閉合標簽,不允許省略閉合標簽。
  4. 一次縮進2個空格,不要使用 tab 或者混合 tab 和空格的縮進。
  5. class 必須單詞全字母小寫,單詞間以 - 分隔。
  6. 標簽的使用應該遵循標簽的語義。
  7. 標簽的使用應盡量簡潔,減少不必要的標簽。
  8. 屬性值必須用雙引號包圍。
  9. 布爾類型的屬性,建議不添加屬性值。
  10. 引入 CSS 時必須指明 rel="stylesheet"。

下面是常見標簽語義

  • p - 段落
  • h1,h2,h3,h4,h5,h6 - 層級標題
  • strong,em - 強調
  • ins - 插入
  • del - 刪除
  • abbr - 縮寫
  • code - 代碼標識
  • cite - 引述來源作品的標題
  • q - 引用
  • blockquote - 一段或長篇引用
  • ul - 無序列表
  • ol - 有序列表
  • dl,dt,dd - 定義列表
CSS
  1. 選擇器與 { 之間必須包含空格。
  2. 屬性名與之后的 : 之間不允許包含空格, : 與 屬性值 之間必須包含空格。
  3. 在可以使用縮寫的情況下,盡量使用屬性縮寫。
  4. 屬性書寫順序
    建議同一rule-set下的屬性在書寫時應按功能進行分組,并以Formatting Model(布局方式、位置) > Box Model(尺寸) > Typographic(文本相關) > Visual(視覺效果)的順序書寫,以提高代碼的可讀性。
  5. 數值為0時不帶單位
  6. 復合樣式使用縮寫
  7. 統一使用小寫

注釋:

  • Formatting Model 相關屬性包括:position / top / right / bottom / left / float / display / overflow 等
  • Box Model 相關屬性包括:border / margin / padding / width / height 等
  • Typographic 相關屬性包括:font / line-height / text-align / word-wrap 等
  • Visual 相關屬性包括:background / color / transition / list-style 等

截圖介紹 chrome 開發者工具的功能區

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、css是什么? CSS全稱是Cascading Style Sheets,簡寫為CSS,稱作:層疊樣式表,又稱...
    青鳴閱讀 889評論 0 1
  • CSS的全稱是什么? CSS全程是Cascading Style Sheets層疊樣式表 CSS有幾種引入方式? ...
    Taaaaaaaurus閱讀 382評論 0 1
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,981評論 19 139
  • 1.CSS簡介 CSS 的全稱是Cascading Style Sheets,層疊樣式表 2.CSS的引入方式 內...
    毛毛獨角獸閱讀 335評論 0 0
  • 8 霜葉城地處東海要扼,城中除了慣有的府尹衙役,還設有一隊海道防官兵。朝廷竭盡異士金銀,造了一批紙漿鎧甲,專供此類...
    山岫閱讀 849評論 0 0