亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

CSS布局帶來的巨大影響:CSS display屬性值

互聯(lián)網(wǎng)   發(fā)布時間:2009-04-02 19:39:08   作者:佚名   我要評論
網(wǎng)頁制作Webjx文章簡介:網(wǎng)頁元素應(yīng)用上那些與表格相關(guān)的display屬性值后,能夠模仿出與表格相同的特性。我將會在該文中給大家演示這種方法給CSS布局帶來的巨大影響。 應(yīng)原書編輯要求,先在文章頂部給出鏈接:《Everything You

網(wǎng)頁元素應(yīng)用上那些與表格相關(guān)的display屬性值后,能夠模仿出與表格相同的特性。我將會在該文中給大家演示這種方法給CSS布局帶來的巨大影響。
它是怎樣實現(xiàn)的?
你可以給HTML元素指定與表格相關(guān)的display屬性值,使得它們像表格元素那樣渲染。以下是這些可用的display屬性值: table
使該元素按table樣式渲染 table-row
使該元素按tr樣式渲染 table-cell
使該元素按td樣式渲染 table-row-group
使該元素按tbody樣式渲染 table-header-group
使該元素按thead樣式渲染 table-footer-group
使該元素按tfoot樣式渲染 table-caption
使該元素按caption樣式渲染 table-column
使該元素按col樣式渲染 table-column-group
使該元素按colgroup樣式渲染
等等……難道用table布局不是錯的嗎?
可能你會對我們上面給出的布局實例有點不爽——畢竟,正如我自己也是一名WEB標準化的擁護者,我們不都一直堅持不應(yīng)該使用table來進行布局嗎?
table元素在HTML當中是一個包含語義的標簽:它描述什么是數(shù)據(jù)。因此,你只能用它來標記那些需要制表的數(shù)據(jù),例如一張財務(wù)信息表。如果數(shù)據(jù)能夠以電子表格的形式保存在你的電腦中,那它在HTML文檔中很可能需要用到table標簽進行標記。
從另一方面來看,display的table屬性值只是聲明了某些元素在瀏覽器中的樣式——它不包含語義。如果使用table元素來進行布局,它將會告訴客戶端:這些數(shù)據(jù)是制表的。使用一些display屬性被設(shè)置為table和table-cell之類的div標簽,除了告訴客戶端以某種特定的樣式來渲染它們以外,不會告訴客戶端任何語義,只要客戶端能夠支持這些屬性值。
當然,我們同樣還要注意,當我們真的需要制表數(shù)據(jù)的時候不要使用一大堆被聲明為display:table;的div元素。
我們上面的那個例子是一個簡單的單行三列布局,無需費盡心思,我們就能夠使用這種技術(shù)輕松實現(xiàn)復(fù)雜的柵格布局。
匿名表格元素
CSS表格除了包含table布局的普通規(guī)則之外,同時還有著CSS table布局的超強特性:缺少的表格元素會被瀏覽器以匿名方式創(chuàng)建。CSS2.1規(guī)范中寫道:


CSS2.1表格模型中的元素,可能不會全部包含在除HTML之外的文檔語言中。這時,那些“丟失”的元素會被模擬出來,從而使得表格模型能夠正常工作。所有的表格元素將會自動在自身周圍生成所需的匿名table對象,使其符合table/inline-table、table-row、table-cell的三層嵌套關(guān)系。


這段話的意思是,如果我們?yōu)樵厥褂?ldquo;display:table-cell;”屬性,而不將其父容器設(shè)置為“display:table-row;”屬性,瀏覽器會默認創(chuàng)建出一個表格行,就好像文檔中真的存在一個被聲明的表格行一樣。
讓我們用個簡單的例子來研究下它的這一特性:以下是三欄柵格布局。我們將會用三份不同的HTML樣例,而它們將表現(xiàn)出相同的視覺效果。
首先,以下是能夠生成三列布局樣例的其中一份:
<div class="container">
<div class="row">
<div class="cell">CELL A</div>
<div class="cell">CELL B</div>
<div class="cell">CELL C</div>
</div>
</div>

這份嵌套的div元素看起來不是那么讓人興奮,稍等一會,我們現(xiàn)在來做點什么。它的CSS樣式也非常簡單:
.container {
display: table;
}

.row {
display: table-row;
}

.cell {
display: table-cell;
width: 100px;
height: 100px;
border: 1px solid blue;
padding: 1em;
}

以上CSS給類名為container的元素定義了“display:table;”屬性,類名為row的元素定義了“display:table-row;”,類名為cell的元素定義了“display:table-cell;”,同樣還給它定義了邊框、高度和寬度值。
以上HTML文檔明確地為三個單元格定義了包含它的表格和表格行,使用到了所有我們創(chuàng)建的CSS類名。然而,我們可以減少這些標簽,移除一行div元素試試:
<div class="row">
<div class="cell">CELL A</div>
<div class="cell">CELL B</div>
<div class="cell">CELL C</div>
</div>

即使上面的代碼遺漏了聲明表格的那一行,瀏覽器仍將創(chuàng)建一個匿名的表格行。我們還可以移除更多的代碼:
<div class="cell">CELL A</div>
<div class="cell">CELL B</div>
<div class="cell">CELL C</div>

以上代碼遺漏了聲明表格和表格行的代碼,瀏覽器同樣會創(chuàng)建出這些匿名的盒對象。即使缺少這些標簽元素,最終的效果仍然是一樣的。

相關(guān)文章

  • 深入解析CSS的display:inline-block屬性的使用

    這篇文章主要介紹了CSS的display:inline-block屬性的使用,其中對使用時產(chǎn)生的空隙問題的解決作了重點講解,需要的朋友可以參考下
    2015-11-09
  • 詳解css中的display屬性

    在一般的CSS布局制作時候,我們常常會用到display對應(yīng)值有block、none、inline這三個值。下面我們來分別來認識和學習什么時候用什么值。這里通過CSS display知識加實例講解
    2014-09-02
  • css中visiblity和display異同詳解

    visiblity 是設(shè)置元素的可見性,即可見 / 隱藏;display 是設(shè)置元素按什么樣的方式來顯示,是按塊顯示,不了解的朋友可以參考下
    2014-02-24
  • css中display和visibility的用法和區(qū)別介紹

    css中display和visibility想必前臺美工對它并不陌生吧,如果你感覺自己對它還不是很熟悉的話,不妨了解本文對display和visibility的使用介紹
    2013-11-17
  • CSS中display:block的作用介紹

    到現(xiàn)在可能有人不知道display:block的作用,問了一句在div的元素里面寫display:block有用嗎?至于這個問題可以詳細參考喜下本文,希望對大家有所幫助
    2013-09-24
  • 談?wù)凜SS隱藏元素(display,visibility)的區(qū)別

    在CSS中,讓元素隱藏(指屏幕范圍內(nèi)肉眼不可見)的方法很多,有的占據(jù)空間,有的不占據(jù)空間;有的可以響應(yīng)點擊,有的不能響應(yīng)點擊
    2013-04-09
  • IE6下css設(shè)置容器高度的BUG不能小于某個值

    在IE6中設(shè)置display:block的空容器為一個較小高度時不知道大家有沒有注意到其高度不能小于某個值,接下來為您詳細介紹下IE6中容器高度的BUG,感興趣的你可以參考下本文
    2013-03-06
  • CSS display:block在Firefox下顯示布局錯亂問題

    本文向大家介紹一下如何解決CSS display:block在Firefox下顯示布局錯亂問題,按照常理,對于某一單元行需要顯示時,使用CSS display:block屬性,在IE瀏覽器中顯示正常,但
    2012-12-30
  • 基于display:table的CSS布局讓HTML元素和像table一樣

    display:table的CSS聲明能夠讓一個HTML元素和它的子節(jié)點像table元素一樣。使用基于表格的CSS布局,使我們能夠輕松定義一個單元格的邊界、背景等樣式,而不會產(chǎn)生因為使用了
    2012-12-07
  • CSS教程:inline-block在各瀏覽器的顯示

    網(wǎng)頁制作Webjx文章簡介:這篇文章所講的也是非常使用的技術(shù),其中牽涉到其他的技術(shù),也需要大家有所了解。正好這兩天也在看這方面的資料,提供一些資料給大家參考。
    2009-04-02

最新評論