5:CSS元素类型
?
* { margin: 0; padding: 0 } body { padding: 30px; padding-top: 10px; line-height: 35px; font-family: "微軟雅黑" } h1,h2 { padding: 20px 0 } h3 { background: #00AA88; color: #FFFCF4; font-size: 20px; font-weight: 700; margin: 10px 0; padding: 5px 0px 5px 15px } p { line-height: 40px } ul li { list-style: none; line-height: 40px } span { color: #199475; font-weight: 700; display: block; padding: 10px; font-size: 18px; padding-left: 0px } em { font-style: normal; color: red } .other { color: #044D22 } .oo { color: red; display: inline; font-size: 18px; font-weight: normal } .marleft { margin-left: 30px } .marbtom { margin: 15px 0; font-weight: 600 } .borderbtm { border-bottom: solid 1px #eee; padding-bottom: 15px; margin-bottom: 15px } .textcon { margin: 10px 0; border: solid 1px #ddd; border-left-width: 6px; padding: 10px; border-color: #f60 } .oos { color: #000; font-weight: 800 }5:CSS元素類型
學習目標
- 1、元素類型分類依據和元素類型分類
- 2、元素類型的轉換
- 3、inline-block元素類型的應用
- 4、置換和非置換元素的概念和應用案例
一、元素類型分類依據和元素類型分類
根據css顯示分類,XHTML元素被分為
三種類型:塊狀元素,內聯元素,行內塊元素、可變元素
1.塊狀元素(block element)
B)默認情況下,塊狀元素都會占據一行,通俗地說,兩個相鄰塊狀元素不會出現并列顯示的現象;默認情況下,塊狀元素會按順序自上而下排列。
C)塊狀元素都可以定義自己的寬度和高度。
D)塊狀元素一般都作為其他元素的容器,它可以容納其它內聯元素和其它塊狀元素。我們可以把這種容器比喻為一個盒子
2.內聯元素(inline element)(或是行內元素)
A) 常見的內聯元素如:a,span,i,em,strong,b等
B) 內聯元素的表現形式是始終以行內逐個進行顯示;
C) 內聯元素沒有自己的形狀,不能定義它的寬和高,它顯示的寬度、高度只能根據所包含內容的高度和寬度來確定,它的最小內容單元也會呈現矩形形狀;
D)內聯元素也會遵循盒模型基本規則,如可以定義padding,border,margin,background等屬性,但個別屬性值不能正確顯示;
a - 錨點 i - 斜體 em - 傾斜
span - 常用內聯容器,定義文本內區塊
strong - 粗體強調 b--加粗
?
3.內聯塊狀元素
內聯塊狀元素(inline-block)就是同時具備內聯元素、塊狀元素的特點,<img>、<input>標簽就是這種內聯塊狀標簽。
inline-block元素特點:
A、和其他元素都在一行上;
B、元素的高度、寬度、行高以及頂和底邊距都可設置
常見標簽:img input textarea
img - 圖片 input - 輸入框
textarea - 多行文本輸入框
?
4、可變元素
需要根據上下文關系確定該元素是塊元素或者內聯元素。
二、元素類型的轉換
盒子模型可通過display屬性來改變默認的顯示類型
1)display屬性與屬性值 (18個屬性值)
屬性值:block/inline/inline-block/none/list-item/table-header-group/table-footer-group
作用:塊狀元素和內聯元素之間的轉換。說明:各屬性值的作用
1)Block塊狀顯示:類似在元素后面添加換行符,也就是說其他元素不能在其后面并列顯示。或者就是讓元素豎排顯示。
2)inline內聯顯示:在元素后面刪除換行符,多個元素可以在一行內并列顯示。或者就是讓元素橫排顯示。
3)當元素設置了float屬性后,就相當于該元素具備塊狀元素顯示的特點;
4)Inline-block行內塊元素顯示:元素的內容以塊狀顯示,行內的其他元素顯示在同一行。
(只有這一個元素類型支持vertical-align屬性)img,input
垂直對齊方式{vertical-align:top/bottom/middle;}
5)none 此元素不會被顯示。
6)list-item:將元素轉換成列表。li的默認類型。
7)
A、大部分塊元素display屬性值默認為block,其中列表的默認值為list-item。
B、大部分內聯元素的display屬性值默認為inline,其中img,input,默認為inline-block。
三、inline-block元素類型的應用
Inline-block行內塊元素顯示:元素的內容以塊狀顯示,行內的其他元素顯示在同一行。
(只有這一個元素類型支持vertical-align屬性)img,input
垂直對齊方式{vertical-align:top/bottom/middle;}
常見應用案例:不同大小的圖片在div當中垂直居中
四、置換和非置換元素的概念
拓展:
一、引題
在之前的淺談HTML中的塊級元素和內聯元素中了解到了內聯元素一般是不能設置寬高的,但是也有特殊。比如img是內聯元素,但可以設置寬高,這肯定讓不少人迷惑。這樣我們就要引入HTML中置換元素的概念(非置換元素在w3c中沒有給出明確的解釋,姑且我們就把除置換元素外的元素當作非置換元素吧)。
二、置換元素與非置換元素
a) 置換元素:瀏覽器根據元素的標簽和屬性,來決定元素的具體顯示內容。
例如:瀏覽器會根據<img>標簽的src屬性的值來讀取圖片信息并顯示出來,而如果查看(x)html代碼,則看不到圖片的實際內容;<input>標簽的type屬性來決定是顯示輸入框,還是單選按鈕等。 (x)html中的<img>、<input>、<textarea>、<select>都是置換元素。這些元素往往沒有實際的內容,即是一個空元素。
置換元素在其顯示中生成了框,這也就是有的內聯元素(img,input)能夠設置寬高的原因。
b) 不可替換元素(非置換元素):(x)html 的大多數元素是不可替換元素,即其內容直接表現給用戶端(如瀏覽器)。
?
返回頂部?
更多專業前端知識,請上 【猿2048】www.mk2048.com
總結
- 上一篇: 6-1 数组函数练习
- 下一篇: CSS制作镂空字体