CSS 入門
講者︰薯羊
OUTLINE
- CSS 的背景簡介
- 如何套用 CSS?
- 選擇器 —— Class & ID
- 複合選擇器
CSS 的背景簡介
W3C
W3C 全寫為 World Wide Web Consortium,全球資訊網協會。
W3C 是一個制定網頁標準規範的組織,他們所制定的標準包括 HTML, XML, CSS 等等。
值得一提的是,這些標準並非強制要一定遵守,而事實上的取得 W3C 認證的網站不足 5%。

CSS 的源起
早期的 HTML 是把 style 的設定內嵌在自己的標籤內。這種做法使網頁變得難以維護。
CSS的出現就是把這個 style 抽離出來,獨立成為一個設定檔。這種做法可以讓設計更有彈性,更多元化,也更便於維護。

CSS 的版本
CSS 一共有3個版本︰
- CSS1
CSS1 在1996年發佈,其內容包括比較基本的屬性。
- CSS2.1
CSS2 於1999年發佈,其內容包括了 媒介控制、表單、區塊等等
- CSS3
CSS3 於1999年草擬,2011年才正式發佈。

如何套用 CSS?
CSS 格式
要用 CSS 控制 HTML 的呈現,你必須經過指定格式,才能讓 HTML 知道你想要做什麼。
CSS的格式如下︰
Selector { property : value }
p {
color:#FFFFFF;
front-family:"Arial";
}套用 CSS
要套用 CSS 有以下3種方法︰
- 行內套用
- 整頁套用
- 外部套用
套用 CSS
行內套用 (inline style) 是指把 style 的設定直接套用在 HTML 的標籤內。
例如︰
行內套用︰
<h2 style="color:blue;font-family:'標楷體'">
我不想教課</h2>套用 CSS
整頁套用 (internal style sheet) 是指,把 style 的設定放在<head></head> 內,讓網頁可以直接從一個 HTML 檔內讀取所有需要的 style 設定。
整頁套用︰
<head>
<style type="text/css">
h2 {color:blue;
front-family:"標楷體";
}
</style>
</head>
<body>
<h2>我想去打球</h2>
</body>套用 CSS
外部套用 (external style sheet) 是指讓 HTML 檔讀取在外面的 .css 檔案,再從外面檔案的引用 style。
這種做法的好處是方便進行檔案結構化,以便管理與維護。
外部套用有 2 種方法,分別是
- 連結
- 外部匯入
外部套用︰
套用 CSS
外部套用︰
-
連結
<head>
<link rel=stylesheet type= "text/css" href="../index.css">
</head>
<body>
<h2>有人想去打球嗎?</h2>
</body>/*index.css*/
h2{
color:blue;
front-family:"標楷體";
}.css檔
.html檔
套用 CSS
外部套用︰
-
外部匯入
<head>
<style>
@import url("../index.css");
</style>
</head>
<body>
<h2>我們下課好不好?</h2>
</body>/*index.css*/
h2{
color:blue;
front-family:"標楷體";
}.css檔
.html檔
動手寫程式(一)
行內套用
- 建立一個<p>的標籤
- <p>的內容為: 行內套用
- <p> style 要求:
background-color: #000;
color:#FFF ;
font-size:20px;
行內套用
<body>
<p style="background-color: #000;
color:#FFF;
font-size:0px;">
行內套用</p>
</body>整頁套用
- 建立一個<h1>標籤
- <h1>的內容為: 整頁套用
- <h1> style 要求︰
font-weight: bold;
text-decoration: underline;
font-family:'標楷體';
整頁套用
<head>
<style type="text/css">
h1 {
font-weight: bold;
text-decoration: underline;
font-family:'標楷體';
}
</style>
</head>
<body>
<h1>整頁套用</h1>
</body外部套用——連結
- 在 html 檔建立一個 <h3> 標籤
- <h3> 的內容是: Connect to .css-1
- 建立一個 .css 的檔案
- css 的內容為更改 <h3> 的屬性︰
font-size: 30em
text-align: center;
font-style: italic ;
外部套用——連結
<head>
<link rel=stylesheet type= "text/css" href="css_1.css">
</head>
<body>
<h3>Connect to .css-1</h3>
</body>/*css_1.css*/
h3 {
font-size: 5em;
text-align: center;
font-style: italic;
}.css檔
.html檔
外部套用——外部匯入
- 在 html 檔建立一個 <p> 標籤
- <p> 的內容是: Connect to .css-2
- 建立一個 .css 的檔案
- css 的內容為更改 <p> 的屬性︰
text-decoration: line-through;
background-color: pink;
color: blue;
外部套用——外部匯入
<head>
<style type="text/css">
@import url("css_2.css");
</style>
</head>
<body>
<p>Connect to .css-2</p>
</body>/*css_2.css*/
p {
text-decoration: line-through;
background-color: pink;
color: blue;
}.css檔
.html檔
Class & ID
Class 與 ID
Class 及 ID 都是使用者設定的選擇器 (selector)
這兩者最大的不同,是在於 ID 選擇器在一個 HTML 文件中只能被使用一次,而 Class 選擇器在一個 HTML 文件中可以被使用多次。
第二個不同的地方,是 ID 選擇器可以被 Javascript 中的 GetElementByID 函數所運用,而 Class 選擇器無法被 Javascript 運用到。
Class
Class 的宣告法,是先放一個句點 「.」,之後再列出選擇器名稱。設定一個 Class 選擇器的語法如下:
.【Class 名稱】{
屬性:設定值;
...
}
<head>
<style>
.navbar {
color:#0000FF;
}
</style>
<head>
<body>
<p class="navbar">Class</p>
</body>例子
Class
一個 Class 可以同時附著於不同的 tag / instance 上,在相同的名字下,有不同的效果。
【型類選擇器】.【選擇器名稱】{
屬性:設定值;
...
}
Class
例子︰
<head>
<style>
b.special {
color:#0000FF;
}
i.special {
color:#FF0000;
}
</style>
<head>
<body>
<p><b class="special">Test_A</b> & <i class="special">Test_B</i>.</p>
</body>ID
ID 的宣告法,是先放一個井字號 (#),之後再列出選擇器名稱。設定一個 ID 選擇器的語法如下:
#【ID 名稱】{
屬性:設定值;
...
}
<head>
<style>
#footer {
color:#FF00FF;
}
</style>
<head>
<body>
<p id="footer"> ID </p>
</body>例子
動手寫程式(二)
Class
- 建立一個<h5>的標籤
- <h5>的Class為: testing
- class - testing 的要求:
color: #F00;
background-color:#FFF ;
font-size:80px;
font-decoration:underline;
ID
- 建立一個 <h2> 的標籤
- <h2> 的 ID 為: thisIsID
- ID - thisIsID 的要求:
複合選擇器
複合選擇器
當設定多個 class 時,可以用「.class1.class2」的形式將選擇器結合在一起( class 中間不可有空格),如此可以指定出「既有class1也有class2」的選擇器
- 通用選擇器
- 群組選擇器
- 子選擇器
- 子孫選擇器
- 相鄰選擇器
通用選擇器
將 style 套用於全部元素標籤中,通常在重置 css 時才會用到此方法。
* { margin: 0px; padding: 0px; }群組選擇器
利用「,」串連多個選擇器一併管理的用法,這樣可以將多處不同樣式一次指定,避免重複撰寫相同的 class 內容。
h1,h2,h3 { color: #333333; }
.main-title, .sub-title, .small-title { font-weight: bold; }子選擇器
利用「>」串連元素間的
親子關係的選擇器。
<head>
<style type="text/css">
li { color: #333333; }
.main-menu > li { color: #ff0000; }
</style>
</head>
<body>
<ul class="main-menu">
<li>項目1</li>
<li>項目2</li>
<li>項目3
<ul>
<li>項目3-A</li>
</ul>
</li>
</ul>
</body>子孫選擇器
利用元素間的親子關係,依序由「父元素→子元素→孫元素 」的形式特定出範圍的選擇器。
#main-list ul li a { color: #ff0000; }完
CSS入門
By sheep_of_block
CSS入門
- 79