创建一个水平盒子java_盒子模型理解
HTML CSS + DIV實(shí)現(xiàn)整體布局
1、技術(shù)目標(biāo):
開發(fā)符合W3C標(biāo)準(zhǔn)的Web頁(yè)面
理解盒子模型
實(shí)現(xiàn)DIV+CSS整體布局
2、什么是W3C標(biāo)準(zhǔn)?
W3C:World Wide Web Consortium,萬(wàn)維網(wǎng)聯(lián)盟
W3C的職能:負(fù)責(zé)制定和維護(hù)Web行業(yè)標(biāo)準(zhǔn)
W3C標(biāo)準(zhǔn)包括一系列的標(biāo)準(zhǔn):
HTML內(nèi)容方面:XHTML
樣式美化方面:CSS
結(jié)構(gòu)文檔訪問(wèn)方面:DOM
頁(yè)面交互方面:ECMAScript
……等等
3、W3C倡導(dǎo)的Web結(jié)構(gòu)要符合以下要求:
XHTML負(fù)責(zé)內(nèi)容組織
CSS負(fù)責(zé)頁(yè)面樣式
4、符合W3C規(guī)范頁(yè)面的結(jié)構(gòu):
Html代碼??
/p>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
charset=gb2312"/>
無(wú)標(biāo)題文檔......頁(yè)面內(nèi)容部分
html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
charset=gb2312"?/>
無(wú)標(biāo)題文檔......頁(yè)面內(nèi)容部分
5、XHTML基本規(guī)范
標(biāo)簽名和屬性名稱必須小寫
HTML標(biāo)簽必須關(guān)閉
屬性值必須用引號(hào)括起來(lái)
標(biāo)簽必須正確嵌套
文檔必須擁有一個(gè)根元素,所有的XHTML元素必須嵌套于根元素中
屬性不能簡(jiǎn)寫,如:
6、頁(yè)面開發(fā)需要注意的地方:
不要使用淘汰的標(biāo)簽:、、等,可參考官方文檔(http://www.w3c.org)
< img />標(biāo)簽的alt屬性:為圖片增加alt屬性
樣式和內(nèi)容分離:將樣式和結(jié)構(gòu)分離,不使用行類樣式
表單的name和id:表單及表單元素要求設(shè)置name和id屬性
使用CSS + DIV布局
頁(yè)面的瀏覽器兼容性
7、為什么需要盒子模型?
網(wǎng)頁(yè)可以看成由一個(gè)個(gè)"盒子"組成,如圖:
由上圖可以看出,頁(yè)面分為上(網(wǎng)站導(dǎo)航)、中、下(版權(quán)聲明)三個(gè)部分,
中間部分又分為左(商品分類)、中(主要部分)、右,這些版塊就像一個(gè)個(gè)
的盒子,這些"盒子"中放置著各種內(nèi)容,頁(yè)面就是由這些"盒子"拼湊起來(lái)
8、盒子模型的相關(guān)屬性
margin(外邊距/邊界)
border(邊框)
padding(內(nèi)邊距/填充 )
我們看圖理解一下各屬性作用:
以上屬性又分為上、右、下、左四個(gè)方向
問(wèn)題:頁(yè)面元素的寬度width、高度height如何計(jì)算?
答案:元素的實(shí)際占位尺寸 = 元素尺寸 + padding + 邊框?qū)挾?/p>
比如:元素實(shí)際占位高度 = height屬性 + 上下padding + 上下邊框?qū)挾?/p>
9、盒模型的層次關(guān)系
我們通過(guò)一個(gè)經(jīng)典的盒模型3D立體結(jié)構(gòu)圖來(lái)理解,如圖:
從上往下看,層次關(guān)系如下:
第1層:盒子的邊框(border),
第2層:元素的內(nèi)容(content)、內(nèi)邊距(padding)
第3層:背景圖(background-image)
第4層:背景色(background-color)
第5層:盒子的外邊距(margin)
從這個(gè)層次關(guān)系中可以看出,當(dāng)同時(shí)設(shè)置背景圖和背景色時(shí),背景
圖將在背景色的上方顯示
10、margin外邊距
可統(tǒng)一設(shè)置或四邊分開設(shè)置,如圖:
???
具體的設(shè)置可查看CSS幫助文檔(頁(yè)面下方提供下載)
11、水平居中和垂直居中
水平居中包含兩種情況:
塊級(jí)元素的水平居中:margin:0px auto;
文字內(nèi)容的水平居中:text-align: center;
垂直居中:
常見的單行文字的垂直居中可設(shè)置文字所在行的height與
行高樣式屬性一致,比如:
div{
width: 400px;
height: 400px;
line-height: 400px;/*行高與div高度一致*/
}
12、案例的首頁(yè)布局分析
只保留DIV的布局分析:
13、首頁(yè)布局CSS + DIV代碼分析
HTML結(jié)構(gòu)代碼:
頂部(header)主體部分(main)底部(footer)CSS樣式代碼:
/*主面板樣式*/
#container {
width:980px;
margin:0px auto;/*主面板DIV居中*/
}
/*頂部面板樣式*/
#header {
width:100%;
height:150px;
border:1px #F00 solid;
}
/*中間部分面板樣式*/
#main {
width:100%;
height:400px;
border:1px #F00 solid;
}
/*底部面板樣式*/
#footer {
width:100%;
height:100px;
border:1px #F00 solid;
}
14、為什么需要float浮動(dòng)屬性?
我們來(lái)看看下圖:
問(wèn)題:如何讓商品分類DIV、內(nèi)容DIV和右側(cè)DIV并排放置?
答案:使用float(浮動(dòng))樣式
15、浮動(dòng)屬性
理解浮動(dòng)屬性首先要搞清楚,什么是文檔流?
文檔流:瀏覽器根據(jù)元素在html文檔中出現(xiàn)的順序,
從左向右,從上到下依次排列
浮動(dòng)屬性是CSS中的定位屬性,用法如下:
float: 浮動(dòng)方向(left、right、none);
left為左浮動(dòng)、right為右浮動(dòng)、none是默認(rèn)值表示不浮動(dòng)
,設(shè)置元素的浮動(dòng),該元素將脫離文檔流,向左或向右移動(dòng)
直到它的外邊距碰到父元素的邊框或另一個(gè)浮動(dòng)元素的邊
框?yàn)橹?/p>
浮動(dòng)示例,沒(méi)有使用浮動(dòng)的3個(gè)DIV:
HTML結(jié)構(gòu)代碼:
第1塊div第2塊div第3塊divCSS樣式代碼:
#first, #second, #third{
width:100px;
height:50px;
border:1px #333 solid;
margin:5px;
}
執(zhí)行效果如圖:
樣式中加入 float:left;
執(zhí)行效果如圖:
你再修改為 float: right試試右浮動(dòng)是什么效果
16、讓商品分類DIV、內(nèi)容DIV和右側(cè)DIV并排放置
HTML結(jié)構(gòu)代碼:
Java代碼??
頂部(header)商品分類(cat)內(nèi)容(content)右側(cè)(sidebar)底部(footer)頂部(header)商品分類(cat)內(nèi)容(content)右側(cè)(sidebar)底部(footer)CSS樣式代碼(在第13節(jié)CSS代碼基礎(chǔ)上加入):
.cat, .sidebar {
float:left;
width:20%;
height:100%;
}
.content {
float:left;
width:60%;
height:100%;
}
17、clear清除
clear只對(duì)塊級(jí)元素有效,表示如果前一個(gè)元素存在左浮動(dòng)或右浮動(dòng),則換行
clear屬性的取值:rigth、left、both、none
18、總結(jié)
盒子模型有哪些屬性?各屬性又分別包含哪些屬性?
float屬性的應(yīng)用場(chǎng)合?有哪些取值?
clear屬性的應(yīng)用場(chǎng)合?有哪些取值?
總結(jié)
以上是生活随笔為你收集整理的创建一个水平盒子java_盒子模型理解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 开头是风的成语有哪些啊?
- 下一篇: java beetl 视频_08.Bee