2011-05-23 132 views
1

我覺得有點奇怪,HTML中沒有preamble元素。這意味着如果帶有序言的文章沒有或沒有默認CSS呈現,讀者就沒有辦法將序言和正文分開。有沒有人知道這種情況下的最佳做法?當然,我可以添加一個序言類,如缺少序言元素

<p class="preamble">New technologies will enable a breakthrough in...</p> 

但這並不能解決根本問題。

+2

HTML並非旨在反映基於打印的或其他「發佈」約定。在下面列出的解決方案中,它們仍然不是直接相關的。即使在語義上,「序言」在超文本範圍內也是一個相當狹隘的概念。 – GalacticCowboy 2011-05-23 22:02:52

+0

不同意@GalacticCowboy。序言在出版中具有明確的語義含義。 Web正在發佈。這顯然是一個缺失的標籤。 – Teson 2017-12-10 22:17:37

+0

@Teson這很好,你有權這樣做。但請注意,這個問題和我的評論早於HTML 5的批准時間大約3年,CSS 3「媒體查詢」規範超過一年。這兩件事帶來了HTML世界和發佈更加緊密。無論如何,我的評論清楚地表明,我只是在談論超文本,而您的反對意見是基於出版。我支持我的發言 - 有許多「發佈」的概念在HTML中是無關緊要的。 – GalacticCowboy 2017-12-11 13:08:59

回答

4

如果我正確理解你的問題,你正在尋找一個在HTML5的<details><summary><article>標籤,也許是:

<details open="true"> 
<summary> 
A Bunch of Latin used by Printers... 
</summary> 
<article> 
Lorem Ipsum Si Dolor Amet... 
</article> 
</details> 

原諒我,如果我誤解你的問題。

編輯:感謝Alochi注意到「打開」必須設置爲「true」才能默認顯示文章。

+0

這將在完全符合HTML5的瀏覽器中默認情況下完全隱藏文章。我懷疑OP是否願意這樣做,我懷疑這裏的細節/摘要並不是正確的內容。但是,我建議,如果要使用它們,則將「open」屬性添加到details元素,以便頁面從顯示的文章開始。有關更多信息,請參閱http://dev.w3.org/html5/spec/interactive-elements.html#attr-details-open。 – Alohci 2011-05-23 21:44:47

+0

@Alohci,謝謝,更新。 :) – 2011-05-23 21:49:17

0

隨着HTML5的,你可以使用<section>元素:

<section class="preamble"> 
    preamble text... 
</section> 
<section class="text"> 
    text... 
</section> 
1

有一個新的元素在HTML5稱爲<header>這是應該做的。不知道它有多普遍,但。