表格、表單、框架集

表格:

在HTML中,使用table標(biāo)簽來(lái)創(chuàng)建一個(gè)表格

在table標(biāo)簽中使用tr來(lái)表示表格中的一行,有幾行就有幾對(duì)tr

在tr中需要使用td來(lái)創(chuàng)建一個(gè)單元格,有幾個(gè)單元格就有幾個(gè)td


可以使用th標(biāo)簽來(lái)表示表頭中的內(nèi)容,

它的用法和td一樣,不同的是它會(huì)有一些默認(rèn)效果


rowspan用來(lái)設(shè)置縱向的合并單元格

colspan橫向的合并單元格


/*邊框*/

? ? ? ? ? ? /*border:1px solid black;*/

? ? ? ? ? ? /*table和td邊框之間默認(rèn)有一個(gè)距離,通過(guò)border-spacing屬性可以設(shè)置這個(gè)距離*/

? ? ? ? ? ? /*border-spacing: 10px;*/

? ? ? ? ? ? /*

? ? ? ? ? ? border-collapse可以用來(lái)設(shè)置表格的邊框合并

? ? ? ? ? ? 如果設(shè)置了邊框合并,則border-spacing自動(dòng)失效


有一些情況下表格是非常的長(zhǎng)的,這時(shí)就需要將表格分為三個(gè)部分,表頭,表格的主體,表格底部

在HTML中為我們提供了三個(gè)標(biāo)簽:

thead 表頭

tbody 表格主體

tfoot 表格底部

這三個(gè)標(biāo)簽的作用,就來(lái)區(qū)分表格的不同的部分,他們都是table的子標(biāo)簽,都需要直接寫(xiě)到table中,tr需要寫(xiě)在這些標(biāo)簽當(dāng)中

thead中的內(nèi)容,永遠(yuǎn)會(huì)顯示在表格的頭部

tfoot中的內(nèi)容,永遠(yuǎn)都會(huì)顯示表格的底部

tbody中的內(nèi)容,永遠(yuǎn)都會(huì)顯示表格的中間

如果表格中沒(méi)有寫(xiě)tbody,瀏覽器會(huì)自動(dòng)在表格中添加tbody

并且將所有的tr都放到tbody中,所以注意tr并不是table的子元素,而是tbody的子元素

通過(guò)table > tr 無(wú)法選中行 需要通過(guò)tbody > tr



以前表格更多的情況實(shí)際上是用來(lái)對(duì)頁(yè)面進(jìn)行布局的,但是這種方式早已被CSS所淘汰了

表格的列數(shù)由td最多的那行決定

表格是可以嵌套,可以在td中在放置一個(gè)表格


子元素和父元素相鄰的垂直外邊距會(huì)發(fā)生重疊,子元素的外邊距會(huì)傳遞給父元素

使用空的table標(biāo)簽可以隔離父子元素的外邊距,阻止外邊距的重疊



解決父子元素的外邊距重疊

.box1:before{

content: "";

/*display:table可以將一個(gè)元素設(shè)置為表格顯示*/

/*display: table;

}


解決父元素高度塌陷

.clearfix:after{

content: "";

display: block;

clear: both;

}


經(jīng)過(guò)修改后的clearfix是一個(gè)多功能的樣式,既可以解決高度塌陷,又可以確保父元素和子元素的垂直外邊距不會(huì)重疊

.clearfix:before,

.clearfix:after{

content: "";

display: table;

clear: both;

}

.clearfix{

zoom: 1;

}



表單:

表單的作用就是用來(lái)將用戶(hù)信息提交給服務(wù)器的

比如:百度的搜索框 注冊(cè) 登錄這些操作都需要填寫(xiě)表單

使用form標(biāo)簽創(chuàng)建一個(gè)表單

form標(biāo)簽中必須指定一個(gè)action屬性,該屬性指向的是一個(gè)服務(wù)器的地址

當(dāng)我們提交表單時(shí)將會(huì)提交到action屬性對(duì)應(yīng)的地址

-->

<!--? 設(shè)置請(qǐng)求方式:method="post" -->

<!--? 需要上傳文件時(shí)要加屬性: enctype="multipart/form-data" -->


使用form創(chuàng)建的僅僅是一個(gè)空白的表單,我們還需要向form中添加不同的表單項(xiàng)

在表單中可以使用fieldset來(lái)為表單項(xiàng)進(jìn)行分組,可以將表單項(xiàng)中的同一組放到一個(gè)fieldset中

在fieldset可以使用legend子標(biāo)簽,來(lái)指定組名


使用input來(lái)創(chuàng)建一個(gè)文本框,它的type屬性是text

如果希望表單項(xiàng)中的數(shù)據(jù)會(huì)提交到服務(wù)器中,還必須給表單項(xiàng)指定一個(gè)name屬性

name表示提交內(nèi)容的名字

用戶(hù)填寫(xiě)的信息會(huì)附在url地址的后邊以查詢(xún)字符串的形式發(fā)送給服務(wù)器

url地址?查詢(xún)字符串

格式:

屬性名=屬性值&屬性名=屬性值&屬性名=屬性值&……

在文本框中也可以指定value屬性值,該值將會(huì)作為文本框的默認(rèn)值顯示


在html中還為我們提供了一個(gè)專(zhuān)門(mén)用來(lái)選中表單中的提示文字的label標(biāo)簽

該標(biāo)簽可以指定一個(gè)for屬性,該屬性的值需要指定一個(gè)表單項(xiàng)的id值


value是默認(rèn)值,設(shè)置什么默認(rèn)顯示什么.


密碼框

使用input創(chuàng)建一個(gè)密碼框,它的type屬性值是password


單選按鈕

- 使用input來(lái)創(chuàng)建一個(gè)單選按鈕,它的type屬性使用radio

- 單選按鈕通過(guò)name屬性進(jìn)行分組,name屬性相同是一組按鈕

- 像這種需要用戶(hù)選擇但是不需要用戶(hù)直接填寫(xiě)內(nèi)容的表單項(xiàng),還必須指定一個(gè)value屬性,這樣被選中的表單項(xiàng)的value屬性值將會(huì)最終提交給服務(wù)器

如果希望在單選按鈕或者是多選框中指定默認(rèn)選中的選項(xiàng),則可以在希望選中的項(xiàng)中添加checked="checked"屬性


多選框

- 使用input創(chuàng)建一個(gè)多選框,它的type屬性使用checkbox


下拉列表

- 使用select來(lái)創(chuàng)建一個(gè)下拉列表

下拉列表的name屬性需要指定給select,而value屬性需要指定給option

可以通過(guò)在option中添加selected="selected"來(lái)將選項(xiàng)設(shè)置為默認(rèn)選中

當(dāng)為select添加一個(gè)multiple="multiple",則下拉列表變?yōu)橐粋€(gè)多選的下拉列表


在下拉列表中使用option標(biāo)簽來(lái)創(chuàng)建一個(gè)一個(gè)列表項(xiàng)


在select中可以使用optgroup對(duì)選項(xiàng)進(jìn)行分組

同一個(gè)optgroup中的選項(xiàng)是一組

可以通過(guò)label屬性來(lái)指定分組的名字


使用textarea創(chuàng)建一個(gè)文本域


提交按鈕可以將表單中的信息提交給服務(wù)器

使用input創(chuàng)建一個(gè)提交按鈕,它的type屬性值是submit

在提交按鈕中可以通過(guò)value屬性來(lái)指定按鈕上的文字


<input type="reset">可以創(chuàng)建一個(gè)重置按鈕,點(diǎn)擊重置按鈕以后表單中內(nèi)容將會(huì)恢復(fù)為默認(rèn)值


使用input type=button可以用來(lái)創(chuàng)建一個(gè)單純的按鈕,這個(gè)按鈕沒(méi)有任何功能,只能被點(diǎn)擊


除了使用input,也可以使用button標(biāo)簽來(lái)創(chuàng)建按鈕

這種方式和使用input類(lèi)似,只不過(guò)由于它是成對(duì)出現(xiàn)的標(biāo)簽,使用起來(lái)更加的靈活



框架集:

框架集和內(nèi)聯(lián)框架的作用類(lèi)似,都是用于在一個(gè)頁(yè)面中引入其他的外部的頁(yè)面

框架集可以同時(shí)引入多個(gè)頁(yè)面,而內(nèi)聯(lián)框架只能引入一個(gè)

在h5標(biāo)準(zhǔn)中,推薦使用框架集,而不使用內(nèi)聯(lián)框架

使用frameset來(lái)創(chuàng)建一個(gè)框架集,注意frameset不能和body出現(xiàn)在同一個(gè)頁(yè)面中

所以要使用框架集,頁(yè)面中就不可以使用body標(biāo)簽

屬性:

rows,指定框架集中的所有的框架,一行一行的排列

cols, 指定框架集中的所有的頁(yè)面,一列一列的排列

這兩個(gè)屬性frameset必須選擇一個(gè),并且需要在屬性中指定每一部分所占的大小

frameset中也可以再嵌套frameset

frameset和iframe一樣,它里邊的內(nèi)容都不會(huì)被搜索引擎所檢索

所以如果搜索引擎檢索到的頁(yè)面是一個(gè)框架頁(yè)的話(huà),它是不能去判斷里邊的內(nèi)容的

使用框架集則意味著頁(yè)面中不能有自己的內(nèi)容,只能引入其他的頁(yè)面

而我們每單獨(dú)加載一個(gè)頁(yè)面,瀏覽器都需要重新發(fā)送一次請(qǐng)求,引入幾個(gè)頁(yè)面就需要發(fā)送幾次請(qǐng)求,用戶(hù)的體驗(yàn)比較差

如果非得用建議使用frameset而不使用iframe


在frameset中使用frame子標(biāo)簽來(lái)指定要引入的頁(yè)面

引入幾個(gè)頁(yè)面就寫(xiě)幾個(gè)frame

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • HTML標(biāo)簽解釋大全 一、HTML標(biāo)記 標(biāo)簽:!DOCTYPE 說(shuō)明:指定了 HTML 文檔遵循的文檔類(lèi)型定義(D...
    米塔塔閱讀 3,331評(píng)論 1 41
  • HTML 5 HTML5概述 因特網(wǎng)上的信息是以網(wǎng)頁(yè)的形式展示給用戶(hù)的,因此網(wǎng)頁(yè)是網(wǎng)絡(luò)信息傳遞的載體。網(wǎng)頁(yè)文件是用...
    阿啊阿吖丁閱讀 4,084評(píng)論 0 0
  • (注1:如果有問(wèn)題歡迎留言探討,一起學(xué)習(xí)!轉(zhuǎn)載請(qǐng)注明出處,喜歡可以點(diǎn)個(gè)贊哦?。ㄗ?:更多內(nèi)容請(qǐng)查看我的目錄。) ...
    love丁酥酥閱讀 4,275評(píng)論 2 5
  • 其實(shí)很多東西開(kāi)始做比較痛苦,但是做著做著就上癮了!就連吸煙喝酒都是這樣,不會(huì)吸煙的開(kāi)始學(xué)吸煙的都是難受的,只過(guò)...
    樂(lè)陽(yáng)L閱讀 70評(píng)論 0 0
  • 人生最可怕的事情也許就是以下幾點(diǎn) 1.總是被自己的情緒打敗,第一是情感情緒,第二是工作情緒 解決的辦法就是不對(duì)抗,...
    Vincent呼歡閱讀 162評(píng)論 0 0