span不是塊元素,而是內(nèi)聯(lián)元素(行內(nèi)元素),可以對(duì)文檔中的行內(nèi)元素進(jìn)行組合。span只是把內(nèi)容定義成一個(gè)整體進(jìn)行操作,不影響布局和顯示,而且span沒(méi)有什么實(shí)用特性,它的作用是圍繞html代碼中的其他元素,為其指定樣式。
(推薦教程:html教程)
span不是塊元素,而是內(nèi)聯(lián)元素(行內(nèi)元素),主要用于容納文字。span用于對(duì)文檔中的行內(nèi)元素進(jìn)行組合。
span只是把內(nèi)容定義成一個(gè)整體進(jìn)行操作,不影響布局和顯示,而且span沒(méi)有什么實(shí)用特性,它的作用便是圍繞html代碼中的其他元素,為其指定樣式。
<span> 標(biāo)簽沒(méi)有固定的格式表現(xiàn)。當(dāng)對(duì)它應(yīng)用樣式時(shí),它才會(huì)產(chǎn)生視覺(jué)上的變化。如果不對(duì) <span> 應(yīng)用樣式,那么 <span> 元素中的文本與其他文本不會(huì)任何視覺(jué)上的差異。
<span> 標(biāo)簽提供了一種將文本的一部分或者文檔的一部分獨(dú)立出來(lái)的方式。
例:
<!doctype html><html><head> <meta charset="utf-8"> </head><body><p>我的母親有 <span style="color:blue;font-weight:bold">藍(lán)色</span> 的眼睛,我的父親有 <span style="color:darkolivegreen;font-weight:bold">碧綠色</span> 的眼睛。</p></body></html>效果圖:
塊元素、內(nèi)聯(lián)元素、內(nèi)聯(lián)塊元素:
元素就是標(biāo)簽,布局中常用的有三種標(biāo)簽,塊元素、內(nèi)聯(lián)元素、內(nèi)聯(lián)塊元素,了解這三種元素的特性,才能熟練的進(jìn)行頁(yè)面布局。
1、塊元素:
塊元素,也可以稱(chēng)為行元素,布局中常用的標(biāo)簽,如:div、p、ul、li、h1-h6等等都是塊元素,它在布局中的行為:
(1)支持全部的樣式
(2)如果沒(méi)有設(shè)置寬度,默認(rèn)的寬度為父級(jí)寬度100%
(3)盒子占據(jù)一行、即使設(shè)置了寬度
代碼:
<!doctype html><html><head> <meta charset="utf-8"> <title>塊元素</title> <style type="text/css"> .box{ background-color: gold; /*width:300px;*/ /*height:200px;*/ } .box2{ background-color: green; /*width:300px;*/ /*height:200px;*/ } </style></head><body> <div>div元素</div> <p>p元素</p</body></html>頁(yè)面顯示效果:
2、內(nèi)聯(lián)元素:
內(nèi)聯(lián)元素,也可以稱(chēng)為行內(nèi)元素,布局中常用的標(biāo)簽,如:a、span、em、b、strong、i等等都是內(nèi)聯(lián)元素,它們?cè)诓季种械男袨椋?br>(1)支持部分樣式(不支持寬、高、margin上下、padding上下)
(2)寬高由內(nèi)容決定
(3)盒子并在一行
(4)代碼換行,盒子之間會(huì)產(chǎn)生間距
(5)子元素是內(nèi)聯(lián)元素,父元素可以用text-align屬性設(shè)置子元素水平對(duì)方方式
解決內(nèi)聯(lián)元素間隙的方法:
(1)去掉內(nèi)聯(lián)元素之間的換行
(2)將內(nèi)聯(lián)元素的父級(jí)設(shè)置font-size為0,內(nèi)聯(lián)元素自身再設(shè)置font-size
代碼:
<!doctype html><html><head> <meta charset="utf-8"> <title>內(nèi)聯(lián)元素</title> <style type="text/css"> .box{ width:500px; height:400px; border:1px solid #000; margin:50px auto 0; font-size:0; /* 解決內(nèi)聯(lián)元素間隙 */ } .box div{ width:100px; height:100px; margin:10px; background-color:gold; } .box a{ background-color:gold; /* width:300px; height:200px; 設(shè)置寬高完全不起作用 */ /* margin:100px 20px; 沒(méi)有上下的邊距,只有左右的邊距 */ /*padding:10px 10px;*/ /* padding的上下不應(yīng)該起作用的,卻出現(xiàn)了bug */ font-size:16px;/* 解決內(nèi)聯(lián)元素間距 */ } .box2{ width:500px; height:100px; border:1px solid #000; margin:50px auto 0; text-align:center; } </style></head><body> <div> <div></div> <div></div> <a href="#">鏈接文字一</a><a href="#">鏈接文字二</a> /* 取消間隙 */ <a href="#">鏈接文字三</a> <a href="#">鏈接文字四</a> <a href="#">鏈接文字五</a> </div> <div> <a href="#">鏈接文字</a> </div></body></html>3、內(nèi)聯(lián)塊元素:
內(nèi)聯(lián)塊元素,也叫行內(nèi)塊元素,是新增的元素類(lèi)型,現(xiàn)有元素沒(méi)有歸于此類(lèi)別的,img和input元素的行為類(lèi)似這種元素,但是也歸類(lèi)于內(nèi)聯(lián)元素,我們可以用display屬性將塊元素或者內(nèi)聯(lián)元素轉(zhuǎn)化成這種元素。它們?cè)诓季种斜憩F(xiàn)的行為:
(1)支持全部樣式
(2)如果沒(méi)有設(shè)置寬高,寬高由內(nèi)容決定
(3)盒子并在一起
(4)代碼換行,盒子會(huì)產(chǎn)生間距
(5)子元素是內(nèi)聯(lián)塊元素,父元素可以用text-align屬性設(shè)置子元素水平對(duì)齊方式。
這三種元素,可以通過(guò)display屬性來(lái)相互轉(zhuǎn)化,不過(guò)實(shí)際開(kāi)發(fā)中,塊元素用得比較多,所以我們經(jīng)常把內(nèi)聯(lián)元素轉(zhuǎn)化為塊元素,少量轉(zhuǎn)化為內(nèi)聯(lián)元素,而要使用內(nèi)聯(lián)元素時(shí),直接使用內(nèi)聯(lián)元素,而不用塊元素轉(zhuǎn)化了。
更多編程相關(guān)知識(shí),請(qǐng)?jiān)L問(wèn):編程學(xué)習(xí)網(wǎng)站??!