CSS 基礎入門

CSS

引言:學習前端基礎知識。第二課 CSS 基礎知識。

時間:2017年11月22日

作者:JustDo23

html_css_js

01. 基礎知識

  1. CSS 是用來為結構化文檔添加樣式的一種計算機語言。
    • Cascading Style Sheets層疊樣式表
    • CSS 最主要的目的是將文件的內容和顯示分隔開來
    • CSS 可以外部引用復用性強提高工作效率
    • CSS 可以靜態修飾網頁同時可以配合腳本動態格式化網頁
    • 層疊 就是對一個元素多次設置同一個樣式最終使用最后一次設置的屬性值。

02. 樣式語法

  1. 簡單代碼

    <!DOCTYPE html>
    <html>
    
    <head>
      <title>前端入門CSS</title>
      <meta charset="utf-8">
      <!-- CSS樣式 -->
      <style type="text/css">
        p {
          font-size: 16px;/*設置文字字號*/
          color: black;/*設置文字顏色*/
          font-weight: bold;/*設置字體加粗*/
        }
    
        span {
          color: blue;
        }
      </style>
    </head>
    
    <body>
      <p>這是一個段落。<span>單獨強調。</span></p>
    </body>
    
    </html>
    
  2. CSS 樣式由選擇符聲明組成,而聲明又由屬性組成。

    css_grammar
    • 選擇符:又稱選擇器指明網頁中要應用樣式規則的元素
    • 聲明:被大花括號包裹,屬性與值之間用冒號分隔,多條屬性用分號分隔。

03. 插入位置

  1. 內聯式

    <body>
      <!-- 內聯式 -->
      <p style="color:green;font-size:12px">這里使用內聯式。</p>
    </body>
    
    • css 直接寫在 HTML 標簽中
  2. 嵌入式

    <head>
      <!-- 嵌入式 -->
      <style type="text/css">
        span { color: blue; }
      </style>
    </head>
    
    • 嵌入式必須寫在<style></style>之間
    • 嵌入式一般寫在<head></head>之間
  3. 外部式

    <head>
      <!-- 外部式 -->
      <link rel="stylesheet" type="text/css" href="/css/master.css">
    </head>
    
    • 屬性href指定外部樣式文件
    • 外部樣式文件擴展名.css
    • 外部文件中直接指定樣式
    span { font-size: 12px; }
    
  4. 優先級

    • 就近原則即離被設置元素越近優先級越高
    • 一般情況下,權值相同 內聯式 > 嵌入式 > 外部式

04. 選擇器

<head>
  <style type="text/css">
    /*標簽選擇器*/
    span { color: blue; }

    /*類選擇器*/
    .className { color: pink; }

    /*ID選擇器*/
    #idName { color: pink; }

    /*子選擇器*/
    .firstGeneration>span {
      border: 1px solid red;/*邊框及顏色*/
    }

    /*后代選擇器*/
    .allGeneration span { border: 1px solid red; }

    /*通用選擇器*/
    * { color: black; }

    /*偽類選擇器*/
    a:hover { color: blue; }

    /*分組選擇器*/
    .groupOne,.groupTwo { border: 1px solid red; }
  </style>
</head>

<body>
  <span>標簽選擇器。</span>
  <p class="className">類選擇器。</p>
  <p id="idName">ID選擇器。</p>
  <p class="firstGeneration">子選擇器。<span>第一代應用。<span>其他代不應用。</span></span>
  </p>
  <p class="allGeneration">后代選擇器。<span>第一代應用。<span>其他代同樣應用。</span></span>
  </p>
  <a href="#">偽類選擇器。鼠標滑過觸發。</a>
  <div class="groupOne">分組選擇器。<span class="groupTwo">同一組使用同一顏色</span></div>
</body>
  • 屬性 ID唯一的所以ID選擇器只能在文檔中使用一次
  • 屬性 class 可以同時指定多個類名用空格分隔。
  • 偽類選擇器可以為標簽的某種狀態設置樣式。兼容性差。
css_selector

05. 特性

  1. 繼承性:有些屬性可以繼承;有些屬性不會被繼承。

  2. 特殊性:權值

    • 標簽 的權值為 1
    • 選擇符的權值為 10
    • ID 選擇符的權值最高為 100
    p{color:red;} /*權值為1*/
    p span{color:green;} /*權值為1+1=2*/
    .warning{color:white;} /*權值為10*/
    p span.warning{color:purple;} /*權值為1+1+10=12*/
    #footer .note p{color:yellow;} /*權值為100+10+1=111*/
    
  3. 層疊性相同權值情況下,后設置樣式覆蓋前設置樣式,就近原則。

  4. 重要性: 使用 !important 語句將權值提升至最高

06. 文字排版

<head>
  <style type="text/css">
    p {
      font-family: "Microsoft Yahei";/*字體*/
      font-size: 16px;/*字號*/
      color: #FF553E;/*顏色*/
      font-weight: bold;/*加粗*/
      font-style: italic;/*斜體*/
      text-decoration: underline;/*下劃線*/
      text-decoration: line-through;/*刪除線*/
      text-indent: 2em;/*段首縮進*/
      line-height: 2em;/*行間距*/
      letter-spacing: 20px;/*漢字或字母間距*/
      word-spacing: 50px;/*單詞與單詞間距*/
      text-align: center;/*塊元素中內容居中*/
    }
  </style>
</head>
  • 2em 的意思就是文字的2倍大小。

07. 元素分類

  1. 分類

    • 塊狀元素
      • 每個塊級元素都從新的一行開始,并且其后的元素也另起一行
      • 元素的寬度高度行高以及頂和底邊距可以設置
      • 默認情況下元素寬度父容器寬度相同
    • 內聯元素也稱為行內元素
      • 和其他元素在同一行
      • 元素的寬度高度以及頂和底邊距不可設置
      • 元素的寬度是包裹內容的寬度,不可改變
    • 內聯塊狀元素
      • 同時具備塊級元素和內聯元素的特點。
      • 和其他元素在同一行。
      • 元素的寬度和高度和行高以及頂和底邊距可以設置。
  2. 改變

    • 屬性 display:block 將元素設置為塊級元素
    • 屬性 display:inline 將元素設置為行內元素
    • 屬性 display:inline-block 將元素設置為內聯塊狀元素

08. 盒模型

[圖片上傳失敗...(image-1c1fa7-1520935055978)]

<head>
  <style type="text/css">
    /*邊框設置*/
    div {
      border-width: 2px;/*邊框寬度*/
      border-style: dashed;/*虛線*/
      border-color: red;
    }

    /*邊框設置簡寫*/
    p {
      border: 2px dashed blue;
    }

    li {
      width: 200px;/*內容寬度*/
      height: 300px;/*內容高度*/
      border: 1px solid red;
      padding: 20px;/*上右下左內邊距*/
      margin: 10px 10px 10px 10px;/*上右下左外邊距*/
    }
  </style>
</head>
  • 元素內容和邊框之間的內間距,稱為填充
  • 元素與元素之間的外間距,稱為邊界
  • 元素整體占位寬度 marginLeft + paddingLeft + width + paddingLeft + marginRight

09. 小結

  • 層疊樣式表語法結構 , 插入位置 , 選擇器 , 元素分類
  • 盒模型
  • 繼續學 CSS 基礎進階

10. 參考

  1. 慕課網 HTML+CSS基礎課程
  2. W3School
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,488評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,034評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,327評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,554評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,337評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,883評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,975評論 3 439
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,114評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,625評論 1 332
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,555評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,737評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,244評論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,973評論 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,362評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,615評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,343評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,699評論 2 370