Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
個(gè)網(wǎng)頁(yè)前端是由HTML DOM與嵌套組合形成視圖結(jié)加上 CSS 樣式的修飾形成視圖,由JavaScript 接受用戶的交互請(qǐng)求,以事件機(jī)制來(lái)響應(yīng)用戶交互操作而形成的。CSS是前臺(tái)頁(yè)面形式最重要的部分,它負(fù)責(zé)控制DOM元素的頁(yè)面布局和顏色、大小的屬性。
在CSS中有一著名的盒子模型理論,可以用它來(lái)控制DOM的位置。基于div+css技術(shù)的“盒子模型”的出現(xiàn)大大代替了傳統(tǒng)的table表格嵌套。
雖然其十分好用,但是對(duì)于很多新手來(lái)說(shuō),卻很難搞清楚它幾個(gè)屬性和內(nèi)容之間的聯(lián)系個(gè)區(qū)別。
所有頁(yè)面的元素都可以看做一個(gè)盒子,占據(jù)著一定的頁(yè)面空間。一般來(lái)說(shuō)這些被占據(jù)的空間往往會(huì)比單純的內(nèi)容要大。因此,可以通過(guò)盒子的邊框和距離等參數(shù)來(lái)控制內(nèi)容的位置。
Div+CSS 盒子模型
說(shuō)明:
1、Margin:中文叫外邊距,主要作用是控制邊框外(Border以外)的區(qū)域,外邊距是透明的。
2、Border:中文叫邊框,是圍繞在內(nèi)邊距(Padding)和內(nèi)容外的邊框。注意,它不是透明的。
3、Padding:中文叫內(nèi)邊距,控制內(nèi)容周圍的區(qū)域,內(nèi)邊距是透明的。
4、Content:內(nèi)容,盒子的內(nèi)容,顯示文本和圖像。
5、在Css文件中設(shè)置的Div的Css.width和Css. height就是內(nèi)容的寬和高。
6、盒子實(shí)際尺寸有可能大于內(nèi)容尺寸:
盒子模型的總寬度等于content(寬)+padding(左右)+border(左右)+margin(左右);
盒子模型的總高度等于content(高)+padding(上下)+border(上下)+margin(上下);
接下來(lái)通過(guò)實(shí)例演示的方式來(lái)一一講解Margin、Border、Padding的作用和區(qū)別。
頁(yè)面如圖所示:
原始樣式
代碼:
HTML:
<body>
<div class="TsetUpper"></div>
<div class="TsetMiddle"></div>
<div class="TsetDown"></div>
</body>
CSS:
.TsetUpper{
width: 400px;
height: 200px;
background-color: black;
position: relative;
margin: auto;
text-align: center;
}
.TsetMiddle{
width: 600px;
height: 200px;
background-color: red;
position: relative;
margin: auto;
}
.TsetDown{
width: 400px;
height: 200px;
background-color: black;
position: relative;
margin: auto;
text-align: center;
}
元素邊框:我們可以在CSS邊框?qū)傩灾性O(shè)置元素邊框的樣式和顏色。
按如下代碼設(shè)置Div(TsetMiddle)的Border(邊框):
border-style:solid;
border-width: 10px;
border-color: aqua;
刷新頁(yè)面如下圖:此時(shí)TsetMiddle這個(gè)盒子的總寬度已經(jīng)變成200+30+30了,而且可以設(shè)置其底色和線條樣式。
Border
margin 控制周圍的元素區(qū)域。margin 沒(méi)有背景顏色,是完全透明的。通過(guò)margin可以控制元素與四周元素的空隙距離;
按如下代碼設(shè)置Div(TsetMiddle)的margin(外邊距):
margin: 30px auto;
刷新頁(yè)面如下圖:此時(shí)TsetMiddle這個(gè)盒子的總寬度已經(jīng)變成200+30(Border)+30(Margin)+30(Border)+30(Margin)了。
Margin
Padding:當(dāng)元素的 padding(填充)內(nèi)邊距被清除時(shí),所釋放的區(qū)域?qū)?huì)受到元素背景顏色的填充。
按如下代碼設(shè)置Div(TsetMiddle)的margin(外邊距):
padding: 30px;
刷新頁(yè)面如下圖:此時(shí)TsetMiddle這個(gè)盒子的總寬度已經(jīng)變成200+30(Padding)+30(Border)+30(Margin)+30(Padding)+30(Border)+30(Margin)了。
Padding
1、各屬性的值可以用px為單位,也可以用em,百分比等。
2、可以利用盒子的各種屬性,調(diào)整其內(nèi)容在父容器中的位置。
order 盒子邊框
復(fù)合屬性。設(shè)置對(duì)象邊框的特性。
盒子邊框三要素:
① 邊框粗細(xì)
② 邊框樣式
③ 邊框顏色
語(yǔ)法:border: border-width | border-style | border-color ;
邊框四邊的粗細(xì)、樣式、顏色,以及上下左右每個(gè)位置的樣式屬性都是可以單獨(dú)調(diào)整的。
邊框的顏色不是必要的,如果不指定顏色,默認(rèn)顏色為黑色,但必須為盒子指定寬高。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
width: 500px;
height: 50px;
}
</style>
</head>
<body>
<div></div>
</body>
</html>
使用 border-style 可為盒子邊框設(shè)置樣式,以下示例為實(shí)線
/* CSS代碼 */
div{
width: 500px;
height: 50px;
border-style: solid;
}
效果:
示例 CSS 代碼
如果需要設(shè)置不同方向的樣式屬性,可以寫在一句 CSS 代碼里,比如說(shuō)下面這段代碼,上下實(shí)線,左右虛線。
/* CSS代碼 */
div{
width: 500px;
height: 50px;
border-style: solid dashed;
}
效果:
屬性值解釋none無(wú)輪廓。 border-color將被忽略,border-width計(jì)算值為0,除非邊框輪廓為圖像,即border-image。hidden隱藏邊框。IE7及以下尚不支持dotted點(diǎn)狀輪廓。IE6下顯示為dashed效果dashed虛線輪廓solid實(shí)線輪廓double雙線輪廓。兩條單線與其間隔的和等于指定的border-width值groove3D凹槽輪廓ridge3D凸槽輪廓inset3D凹邊輪廓outset3D凸邊輪廓
使用 border-width 可為盒子邊框設(shè)置粗細(xì),以下示例邊框?yàn)?5px 粗細(xì)
/* CSS代碼 */
div{
width: 500px;
height: 50px;
border-style: solid;
border-width: 5px;
}
效果
示例 CSS 代碼
如果需要設(shè)置不同方向的邊框粗細(xì),可以寫在一句 CSS 代碼里。
比如說(shuō)下面這段代碼,上下2px,右2px,左5px。
/* CSS代碼 */
div{
width: 500px;
height: 50px;
border-style: solid;
border-width:2px 2px 2px 5px;
}
效果:
可直接輸入
顏色的英文名稱
rgb值
十六進(jìn)制
使用 border-color 可為盒子邊框設(shè)置顏色,以下示例邊框顏色為紅色。
/* CSS代碼 */
div{
width: 500px;
height: 50px;
border-style: solid;
border-width:2px 2px 2px 5px;
border-color: red;
}
效果:
示例 CSS 代碼
上面有兩個(gè)示例講述如何設(shè)置不同方向的屬性,border-color 也是相同使用方法,此處就不做示例了。
如果你需要同時(shí)設(shè)置盒子的粗細(xì)、樣式、顏色,那么你可以將他們的樣式表寫在同一行代碼里。
例如:
/* CSS代碼 */
div{
border-top: 5px solid red;
}
這段代碼指定了上邊框的三個(gè)屬性:粗細(xì)、樣式、顏色
border-top 包含了:
其他同理
先來(lái)看一個(gè)示例
/* CSS代碼 */
div{
width: 100px;
height: 100px;
border-top: 50px solid red;
border-right: 50px solid blue;
border-bottom: 50px solid green;
border-left: 50px solid pink;
}
效果:
細(xì)心的你,一定發(fā)現(xiàn)了 border 的邊框四條邊交接處是斜角。
此刻我們把盒子的寬高設(shè)置為 0
/* CSS代碼 */
div{
width: 0;
height: 0;
border-top: 50px solid red;
border-right: 50px solid blue;
border-bottom: 50px solid green;
border-left: 50px solid pink;
}
效果:
是不是完完全全像四個(gè)三角形一樣。
我們只需要把上邊和左右兩邊的三角形隱藏起來(lái),它不就是一個(gè)三角形了。
為 border-color 指定 transparent 值,使盒子邊框顏色變透明
/* CSS代碼 */
div{
width: 0;
height: 0;
border-top: 50px solid transparent;
border-right: 50px solid transparent;
border-bottom: 50px solid green;
border-left: 50px solid transparent;
}
效果:
把另外三條邊透明之后,就只剩一個(gè)三角形了。
完
部分資料引用自:
SS盒子模型
提到盒子大家應(yīng)該可以想到很多生活中的例子,例如紙盒、收納盒、垃圾桶等等立體的盒子。這些盒子和CSS中的盒子有很多的相似點(diǎn),都有高度寬度都可以裝東西。那么我們來(lái)一起探究一下什么是盒子模型?
概念:使用盒子模型來(lái)盛放網(wǎng)頁(yè)中的各種元素,在網(wǎng)頁(yè)設(shè)計(jì)中,內(nèi)容指文字、圖片等元素,也可以是盒子之間的嵌套。填充只有寬度高度屬性,可以理解為填充物(padding),而盒子的材料厚度就是邊框(大小、線性、顏色),盒子與盒子之間的距離(margin)就是間距。
Box Model CSS盒模型本質(zhì)上是一個(gè)盒子,封裝周圍的HTML元素,它包括:邊距,邊框,填充,和實(shí)際內(nèi)容。
盒模型的組成由width、height、border、padding、margin來(lái)描述。
margin是什么?
例如生活中的箱子,兩個(gè)箱子并排放在一起,他們兩個(gè)之間的間距(margin)被稱為外邊距。分為上右下左四個(gè)方向。
padding是什么?
當(dāng)我們往盒子里邊放了一些貴重的物品時(shí)(小心易碎!),需要在物品和盒子之間放置一些填充物,這些填充物(padding)被稱為內(nèi)邊距。同樣內(nèi)邊距分為上右下左四個(gè)方向。
在盒子模型中,width,height指的是內(nèi)容區(qū)域的的尺寸。增加內(nèi)外邊距不會(huì)影響內(nèi)容區(qū)域的尺寸,但是會(huì)影響元素的總尺寸。 所以當(dāng)我們?nèi)ビ?jì)算一個(gè)元素應(yīng)該在頁(yè)面呈現(xiàn)多大我們需要去合理的設(shè)置相關(guān)的屬性達(dá)到我們需要的效果。
探究一下padding與margin不同的值所體現(xiàn)的效果。
example
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。