2/22/2017 10:26:28 PM
聯(lián)網(wǎng)狀態(tài)下代碼高亮步驟:
單擊左下角“M”標(biāo)志,選擇GFM,在代碼開始標(biāo)志“```”后面加入代碼類型肝集,如“html/css/js”
CSS
Q1:當(dāng)同一個 HTML 元素被不止一個樣式定義時,會使用哪個樣式呢?
A:一般而言秉扑,所有的樣式會根據(jù)下面的規(guī)則層疊于一個新的虛擬樣式表中:
優(yōu)先級從高到低排列為:
- head元素中!important
- body元素中inline style內(nèi)聯(lián)樣式(行內(nèi)樣式)
- head元素中id選擇器(無論這個id聲明放在class選擇器上面還是下面)
- head元素中class選擇器(同一個body元素內(nèi)應(yīng)用到兩個及以上的class,無論body中class值如何排序调限,head元素中靠內(nèi)的class選擇器優(yōu)先級高于靠外的class選擇器)
- head元素中tag標(biāo)簽選擇器
- css外部樣式表
- body標(biāo)簽內(nèi)style樣式
- 瀏覽器缺省設(shè)置(即默認(rèn)樣式)
如:
<head>
<style type="text/css">
.bgc1{background-color: #F00 !important;}
#bgc{background-color: #00F;}
.bgc2{background-color: #0F0;}
</style>
</head>
<body style="background-color: yellow">
<p class="bgc2 bgc1" id="bgc" style="background-color: #000">背景顏色</p>
</body>
顯示效果如下圖:
CSS語法
CSS 規(guī)則由兩個主要的部分構(gòu)成:選擇器舟陆,以及一條或多條聲明。
CSS 對大小寫不敏感耻矮。不過存在一個例外:如果涉及到與HTML文檔一起工作的話秦躯,class和id名稱對大小寫是敏感的。
格式:
h1{color:red; font-size:14px;font-family: Georgia, Palatino, serif;}
如果值為若干單詞裆装,則要給值加引號:
p{font-family:"sans serif";}
選擇器分組:
h1,h2,h3,h4,h5,h6 {color: green;}
繼承:
如果不希望 "Verdana, sans-serif" 字體被所有的子元素繼承踱承,又要照顧忽略繼承和body元素規(guī)則的瀏覽器,可以單獨(dú)為這些子元素創(chuàng)建特殊規(guī)則哨免。
body{font-family: Verdana, sans-serif;}
td, ul, ol, ul, li, dl, dt, dd{font-family: Verdana, sans-serif;}
p{font-family: Times, "Times New Roman", serif;}
派生選擇器:
根據(jù)文檔的上下文關(guān)系來確定某個標(biāo)簽的樣式茎活。
<head>
<style>
li strong {
font-style: italic;
font-weight: normal;
}
</style>
</head>
<body>
<p><strong>我是粗體字,不是斜體字琢唾,因?yàn)槲也辉诹斜懋?dāng)中载荔,所以這個規(guī)則對我不起作用</strong></p>
<ol>
<li><strong>我是斜體字。這是因?yàn)?strong 元素位于 li 元素內(nèi)采桃。</strong></li>
<li>我是正常的字體懒熙。</li>
</ol>
</body>
顯示效果如下圖:
id選擇器:
一個頁面可以有很多不同的id選擇器,但一個id 屬性只能在每個 HTML 文檔中出現(xiàn)一次普办。
<style>
#red {color:red;}
#green {color:green;}
</style>
<body>
<p id="red">這個段落是紅色工扎。</p>
<p id="green">這個段落是綠色。</p>
</body>
即使被標(biāo)注為 sidebar 的元素只能在文檔中出現(xiàn)一次衔蹲,這個 id 選擇器作為派生選擇器也可以被使用很多次:
#sidebar p {
font-style: italic;
text-align: right;
margin-top: 0.5em;
}
#sidebar h2 {
font-size: 1em;
font-weight: normal;
font-style: italic;
margin: 0;
line-height: 1.5;
text-align: right;
}
在這里肢娘,與頁面中的其他 p 元素明顯不同的是,sidebar 內(nèi)的 p 元素得到了特殊的處理,同時蔬浙,與頁面中其他所有 h2 元素明顯不同的是猪落,sidebar 中的 h2 元素也得到了不同的特殊處理。
類選擇器
- 格式一
<style>
.center {text-align: center}
</style>
<body>
<h1 class="center">類選擇器</h1>
</body>
- 格式二
<style>
td.fancy {color: #f60;background: #666;}
</style>
<body>
<td class="fancy">
</body>
注意:類名的第一個字符不能使用數(shù)字畴博!它無法在 Mozilla 或 Firefox 中起作用笨忌。
屬性選擇器
可以為擁有指定屬性的 HTML 元素設(shè)置樣式,在為不帶有 class 或 id 的表單設(shè)置樣式時特別有用。
- 格式一
<style>
[title]
{
color:red;
}
</style>
- 格式二
<style>
[title="W3School"]
{
border:5px solid blue;
}
</style>
- 格式三
<style>
input[type="text"]
{
width:150px;
display:block;}
input[type="button"]
{
width:120px;
margin-left:35px;}
</style>
<body>
<form name="input" action="" method="get">
<input type="text" name="Name" value="Gates" size="20">
<input type="button" value="Example Button">
</form>
</body>
顏色:
Hexadecimals(或hex)是十六進(jìn)制數(shù)字俱病,符號 0-9代表數(shù)值零到九官疲,再使用A、B亮隙、C途凫、D、E溢吻、F 代表數(shù)值十到十五维费。即用0到F可為我們提供16個可能的數(shù)值妖泄。
16個值和6個位置意味著我們有16的6次方裳凸,即超過1600萬種可能的顏色。
Hex code遵循rgb(紅-綠-藍(lán))格式碎绎。
- 前兩位代表紅色的數(shù)量(紅色:#FF0000)
- 第三四位代表綠色的數(shù)量(綠色:#00FF00)
- 第五六位代表藍(lán)色的數(shù)量(藍(lán)色:#0000FF)
- 平均混合的顏色可縮短為三位(紅色#F00)
屬性:值蝇狼;
三種寫法
color:#000---#fff;
color:rgb(0,0,0);---rgb(255,255,255);
color:rgb(0%,0%,0%);---rgb(100%,100%,100%)
正則表達(dá)式
a{1,4}
a
aa
aaa
aaaa
[fa|ba|ca|fafdafsaf]
fa
ba
ca
fafdafsaf
ab{0,1}cde{0,1}f{0,1}g
或ab?cde?f?g
acdefg
abcdfg
abcdeg
abcdg
acdeg
acdfg
acdg
HTML
格式
<form id="form" action="form.php" method="post" style="font-size:25px;background-color:red;">
</form>
pre標(biāo)簽
html中對空格不敏感阅畴。pre元素可定義預(yù)格式化的文本,被包圍在pre元素中的文本通常會保留空格和換行符迅耘,而文本也會呈現(xiàn)為等寬字體贱枣。
pre標(biāo)簽的一個常見應(yīng)用就是用來表示計(jì)算機(jī)的源代碼。
可以導(dǎo)致段落斷開的標(biāo)簽(例如標(biāo)題颤专、p和address標(biāo)簽)絕不能包含在pre所定義的塊里纽哥。
屬性="值":width="number",描述:定義每行的最大字符數(shù)(通常是40栖秕、80或132)
如:
<pre>
鵝鵝鵝
曲項(xiàng)向天歌
白 毛浮綠 水
紅掌撥清
波
</pre>
顯示效果如下圖:
abbr標(biāo)簽
abbr標(biāo)簽指示簡稱或首字母縮寫
屬性="值":title="全拼"
<abbr title="etcetera">etc.</abbr>
<br />
<abbr title="World Wide Web">WWW</abbr>
顯示效果如下圖:鼠標(biāo)移到文本區(qū)域會顯示完整的單詞或句子昵仅。
bdo標(biāo)簽
bdo 元素可覆蓋默認(rèn)的文本方向
屬性="值":dir="ltr/rtl",定義文字的方向累魔。
<bdo dir="rtl">Here is some Hebrew text</bdo>
顯示效果如下圖:
做一個表單
<!DOCTYPE html>
<html>
<head>
<title>登錄注冊</title>
</head>
<body>
<form id="form" action="form.php" method="post" enctype="multipart/form-data">
<fieldset>
<legend>用戶</legend>
<input id="hiddenField" type="hidden" name="hiddenField" value="hiddenvalue"/>
<label for="username">用戶:</label>
<input id="username" type="text" name="username" value="" size="15" maxlength="25"/>
<br/>
<label for="pass">密碼:</label>
<input id="password" type="password" name="pass" value="" size="15" maxlength="25"/>
</fieldset>
<fieldset>
<legend>性別</legend>
<label for="sex">基佬</label>
<input id="sex" type="radio" value="1" name="sex"/>
<label for="sex">同志</label>
<input id="sex" type="radio" value="2" name="sex"/>
<label for="sex">玻璃</label>
<input id="sex" type="radio" value="3" name="sex"/>
</fieldset>
<fieldset>
<legend>愛好</legend>
<label for="fav">吃飯</label>
<input id="fav" type="checkbox" value="1" name="fav"/>
<label for="sex">睡覺</label>
<input id="fav" type="checkbox" value="2" name="fav"/>
<label for="sex">打豆豆</label>
<input id="fav" type="checkbox" value="3" name="fav"/>
<label for="sex">自閉癥</label>
<input id="fav" type="checkbox" value="4" name="fav"/>
</fieldset>
<fieldset>
<legend>靚照</legend>
<label for="myimage">照片上傳</label>
<input id="myimage" type="file" value="" name="myimage" size="35" maxlength="255"/>
</fieldset>
<fieldset>
<legend>提交</legend>
<input id="submit" type="submit" value="提交" name="submit"/>
<input id="reset" type="reset" value="重置" name="reset"/>
</fieldset>
</form>
</body>
</html>
顯示效果如下圖:
塊級元素:
<div></div>
<p></p>
<h></h>
<ul></ul>
<table></table>
<dt></dt>
<p>
內(nèi)不能嵌套任何塊級元素,<h>
不能嵌套自身和其他<h>
够滑,<dt>
不能嵌套自身(嵌套自身顯示網(wǎng)頁效果沒有問題垦写,但在網(wǎng)頁上按"ctrl+shift+c"查看源代碼是有問題的);內(nèi)聯(lián)元素不能嵌套塊級元素彰触,只能包含其他內(nèi)聯(lián)元素梯投;塊元素可以包含內(nèi)聯(lián)元素和某些特定的塊元素。
<p><div></div></p>
—— 錯
<span><div></div></span>
—— 錯
<div><p></p></div>
—— 對
<div><div><p></p></div></div>
—— 對
<div><h1></h1><p></p></div>
—— 對
<a href=http://www.cnblogs.com/jyybeam/p/"#">
—— 對
<p><p></p></p>
—— 錯
<h2><h2></h2></h2>
—— 錯
<h2><h3></h3></h2>
—— 錯
<p><h2></h2></p>
—— 錯
<h2><p></p></h2>
—— 對
<dt><dt></dt></dt>
—— 錯有幾個特殊的塊級元素只能包含內(nèi)嵌元素,不能再包含塊級元素分蓖,這幾個特殊的標(biāo)簽是:
h1尔艇、h2、h3么鹤、h4终娃、h5、h6蒸甜、p棠耕、dt。
- 當(dāng)輸入
<h2><h2></h2></h2>
時柠新,瀏覽器出現(xiàn)的html文檔是:<h2></h2><h2></h2>
窍荧,原本是嵌套的屬于父子關(guān)系的標(biāo)簽成為了2個兄弟標(biāo)簽。 - 當(dāng)輸入
<h2><h3></h3></h2>
時恨憎,瀏覽器出現(xiàn)的html文檔是:<h2></h2><h3></h3>
蕊退,原本是嵌套的屬于父子關(guān)系的標(biāo)簽成為了2個兄弟標(biāo)簽。 - 當(dāng)輸入
<p><p></p></p>
時憔恳,瀏覽器出現(xiàn)的html文檔是:<p></p><p></p><p></p>
,原本是嵌套的屬于父子關(guān)系的標(biāo)簽成為了3個兄弟標(biāo)簽瓤荔。 - 當(dāng)輸入
<p><h2></h2></p>
時,瀏覽器出現(xiàn)的html文檔是:<p></p><h2></h2><p></p>
喇嘱。 - 當(dāng)輸入
<dt><dt></dt></dt>
時茉贡,瀏覽器出現(xiàn)的html文檔是:<dt></dt><dt></dt>
。 - 當(dāng)輸入
<h2><p></p></h2>
時者铜,瀏覽器出現(xiàn)的html文檔是:<h2><p></p></h2>
腔丧,是正確的用法。
創(chuàng)建CSS
插入樣式表的三種方法
- 外部樣式表
樣式需要應(yīng)用于很多頁面時作烟,使用外部樣式表可以通過改變一個文件來改變整個站點(diǎn)的外觀愉粤。每個頁面使用 <link> 標(biāo)簽鏈接到樣式表。
<link> 標(biāo)簽在(文檔的)頭部:
<head> <link rel="stylesheet" type="text/css" href="mystyle.css" /> </head>
)
外部樣式表中不能能包含任何的 html 標(biāo)簽拿撩,樣式表應(yīng)該以 .css 擴(kuò)展名進(jìn)行保存衣厘。
格式如下
hr {color: sienna;} p {margin-left: 20px;} body {background-image: url("images/back40.gif");}
- 內(nèi)部樣式表
當(dāng)單個文檔需要特殊的樣式時,就應(yīng)該使用內(nèi)部樣式表压恒。你可以使用<style>
標(biāo)簽在html文檔頭部定義內(nèi)部樣式表影暴,就像這樣:
<head>
<style type="text/css">
hr {color: sienna;}
p {margin-left: 20px;}
body {background-image: url("images/back40.gif");}
</style>
</head>
- 內(nèi)聯(lián)樣式
當(dāng)樣式僅需要在一個元素上應(yīng)用一次時,可以使用內(nèi)聯(lián)樣式。
<p style="color: sienna; margin-left: 20px">This is a paragraph</p>