CSS3基礎 1 樣式表的使用 1.內聯樣式表。 隻影響單個元素,常用於標簽。 <p style="color: aqua;font-size: 20px">This is CSS.</p> 2.內部樣式表。 對本頁面元素起作用,一般寫在<head></head>中,用<style></style> ...
CSS3基礎
1 樣式表的使用
1.內聯樣式表。
隻影響單個元素,常用於標簽。
<p style="color: aqua;font-size: 20px">This is CSS.</p>
2.內部樣式表。
對本頁面元素起作用,一般寫在<head></head>中,用<style></style>定義。
<head>
<meta charset="utf-8">
<title>無標題文檔</title>
<style>
body{
font-family: "宋體";
}
</style>
</head>
3.連接外部樣式表。
建立一個外部CSS文件用link元素引入到HTML中。
<link rel="stylesheet" type="text/css" href="CSS/realtest.css">
總結:
CSS內聯:就是把CSS放在HTML Head里使用Style包圍。<style type="text/css"></style>
CSS外聯:就是把CSS放到一個單獨的文件里,然後在HTML通過調用。<link rel="stylesheet" type="text/css" href="">。
我們知道HTTP請求是比較昂貴的,CSS內聯的話肯定會更快,因為把CSS放到HTML文件里,這意味著減少了一次HTTP請求。而外聯的話就是 一次HTTP請求,但是可以緩存,當瀏覽器載入過這個文件時,第二次請求的時候是第緩存里讀取的,所以第二次請求時是很快的,外聯的CSS還可以重用代 碼。那到底是使用內聯還是外聯呢?這就要看需求,如果一個頁面不需要緩存時,也就是這個頁面不太訪問,或者訪問不多的時候,比如註冊頁面,一般情況下人家 只會進入一次,不可能第次進入這個網站你都去註冊,那就另當別論了,這個頁面不需要緩存,把CSS放在Head里時可以縮短載入時間,提高用戶體驗。對於 經常訪問的頁面,外聯肯定是不二的選擇。
在一些大的網站,如:Google,Yahoo也可以看到把CSS寫在Head里。對於結構表現行為分離的原則,我們對於CSS入在Head里是可以接受的,只要不是寫在元素上面。
Copyright@Kingwell Leng
2 定義選擇器
選擇器分兩個種類,第一種為DOM選擇器,包含類型選擇器、類選擇器和選擇元素一部分和ID選擇器,第二種包含偽選擇器。
1.按照類型選擇元素。
以標簽為單位來設置相同的顯示樣式,不需要定義首碼符。
<style>
p{
font-family: "宋體";color: red;
}
a{color: #ADADAD;}
</style>
2.按照類型選擇標簽。
以標簽樣式類型選擇為選擇條件,類型為class,“.”為首碼,可以對多個標簽應用樣式,也可以派生樣式。
<head>
<style type=”text/css”>
.anyname{
font-family: "宋體";
color: #ADADAD;
width: 100px;
height: auto;
border: 1px solid blue;
}
</style>
</head>
<body>
<p>This is CSS.</p>
<div class="anyname">
<p>This is CSS!</p>
</div>
</body>
3.按照ID選擇元素
類似與類型選擇器,以“#”為首碼,在標簽中加入id屬性引用樣式。
<head>
<style type="text/css">
#box{
font-family: "宋體";
color: #ADADAD;
width: 100px;
height: auto;
border: 1px solid blue;
}
</style>
</head>
<body>
<p>This is CSS.</p>
<div id="box">
<p>This is CSS!</p>
</div>
</body>
4.選擇元素的一部分
單獨選擇元素從而不影響其他元素,有子元素選擇器和多重元素選擇器。
1)子元素選擇器
h1>strong{color:red;}
或者:h1 strong{color:red;}
註:只對第一層有效
2)多重元素選擇器
優點在於避免過多的id、class屬性設置,直接對所需元素進行定義。
#anyname p li a{float:right; color:#ADADAD;}
3)選擇部分元素
實現多個元素或標簽設置為同一樣式。
<style type="text/css">
html {color:black;}
p {color:blue;}
h2 {color:silver;}
</style>
5. 偽類選擇器
CSS中已經定義好的選擇器,不可以重命名。
1)<a>標簽中的集中選擇器
a:link表示未訪問的鏈接
a:visited表示已訪問的鏈接
a:hover表示滑鼠懸停的鏈接
a:active表示選定的鏈接(被按下時)
註:在 CSS 定義中,a:hover 必須被置於 a:link 和 a:visited 之後,才是有效的。
在 CSS 定義中,a:active 必須被置於 a:hover 之後,才是有效的。
如:a:link{color:#ADADAD;text-decoration:none;}/*none表示將預設下劃線去掉*/
2)CSS中四個偽元素選擇器
First-line 對所選標簽元素的第一行應用樣式 p:first-line{color:red;}
First-letter 對所選標簽元素的文字首字母應用樣式 p:first-letter{color:bule;}
Before 在某個元素前插入一些內容 li:before{content:”^^^”;}
After 在某個元素後插入一些內容 li:after{content:”(僅用於測試)”;}
3 文本與排版樣式的使用
1. 長度、百分單位
像素(px)與百分比是常用的長度單位。
在沒有CSS規則限制下,長度關係:1em(相對單位)==16px(像素)==0.17in(英寸)==12pt(點)==1pc(派卡)==4.2mm(毫米)==0.42cm(釐米)
2. 文本樣式屬性
1) text-shadow 文字陰影。
div {
text-shadow: 10px 10px 10px orange,/*x偏移量,y偏移量,模糊半徑,顏色*/
40px 40px 40px yellow,
20px 20px 23px #ADADAD;/*設置多個文字陰影*/
font-size: 50px;
font-weight: bold;/*{normal|bold|bolder|lighter|inherit}*/
font-family: "宋體";
color: navy;
}
2) word-wrap 文本的控制換行。用於指定區域如div顯示不完一行文字的時候為了不超出區域範圍而使用的強制換行。
Word-wrap; normal | break-word
*normal 只能在兩個單詞之間折斷,break-word允許詞內換行
3) webfont與font-face CSS3中webfont功能使網頁上能顯示伺服器端的字體。
使用方法:直接在<style></style>中插入以下代碼
@font-face{
font-famliy:WebFont;
src: url('Font_Sans_R_45b.otf')format("opentype");/*應用伺服器端字體*/
font-weight: normal;
}
4) font-size-adjust 可以保持字體在大小部發生變化的情況下改變字體的類型。
font-size-adjust: 0.46;
5) text-ouline與text-stroke 輪廓控制屬性。
Text-outline: 2px 4px red; /*寬度,模糊半徑,顏色*/
Text-stroke 描邊控制
-webkit-text-stroke:3px #ADADAD; /*寬度,顏色*/
4 背景和顏色的使用
1. 背景顏色
網頁背景顏色設置:Background-color: transparent | color /*透明或者設置顏色*/
HSLA:/*色調(0-360,0&360==red,120==green,240==bule),飽和度(100%),亮度(100%),透明度(0~1)*/
div.a{background:hsla(120,35%,50%,0.2);height: 20px;}
2. 背景圖片
格式如下:
Body{background-img:url(../picture.jpg);}
關於background還有一些屬性如-cilp、origin、size等控制背景圖片位置等屬性
5 盒子概念與使用
1. 元素外邊界。
外邊界定義了矩形對象與其他矩形對象的距離,即模塊與模塊之間的空隙。
margin-bottom: 10px;/*下邊界*/
margin-left: 20px;/*左邊界*/
padding: 40px 30px 20px 60px;/*上下左右邊界*/
margin: 0 auto;/*auto居中*/
2. 元素邊框
可以定義邊框粗細。
border: 50px #ADADAD;/*定義粗細,顏色*/
border-style: solid dotted double dashed;/*上下左右邊框單獨設置樣式*/
border-style屬性:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit
3. 元素內邊界
內容與邊框的空隙,與外邊界屬性類似。
padding: 40px;
設置一個的時候表示上下左右距離一樣,也可以用分別設置上下左右邊界距離。
padding: 40px 30px 20px 60px;
4. 內容的寬度、高度設置
在設置邊框的時候可以一同定義內容的寬高度。
div.a{
background:hsla(120,35%,50%,0.2);height: 20px;width:200px;
margin-bottom: 10px;/*外邊界定義*/
margin-left: 20px;
margin: 0 auto;
padding: 40px 30px 20px 60px;/*內邊界定義*/
height: 100px;/*寬高度定義*/
width: 100px;
border: 50px #ADADAD;/*邊框定義*/
border-style: solid dotted double dashed;
}
5. 列表樣式
常見的列表屬性值
list-style-type /*設定引導列表的符號類型*/
list-style-image /*選擇圖像作為項目的引導符號*/
list-style-position /*決定列表項目縮進*/
常見的列表符號屬性
Circle 設定類型
Square 圖像
Decimal 阿拉伯數字
Lower-roman 小寫羅馬數字
Wpper-roman 大寫羅馬數字
Lower-alpha 小寫字母
Wpper-alpha 大寫字母
None 不現實項目符號
Disc 實心圓
在style中使用列表樣式
List-style-type:decimal;
註:
//-ms代表ie內核識別碼
//-moz代表火狐內核識別碼
//-webkit代表谷歌內核識別碼
//-o代表歐朋【opera】內核識別碼
//統標識語句句寫符合w3c標準
2017-11-15