2009-06-03 15 views
1

我認爲理想的做法是純粹將CSS用於佈局和表示,HTML用於內容。但是,讓我們說,公司希望將頁面底部的「相關文章」框更改爲頁面頂部。在這種情況下,不會單獨使用CSS不是一個理想的解決方案,但是更好地更改HTML以及?因此,現在的情況是,HTML仍然在頁面佈局和展示中扮演一個角色?謝謝。是不是真的HTML仍然在頁面佈局中起作用?

回答

6

事情仍然以與它們在html中相同的順序出現 - 它不像我們可以使用絕對和相對位置那樣具有限制性,但這些都是不受歡迎的 - 最好使用dom flow來處理放置,並且這意味着是的,你應該在html中移動節點。正如Jason所說,CSS是用於設計內容的樣式,內容本身及其順序是由數據(html)定義的,因爲順序對於信息的上下文是必需的,所以它牢牢地位於'數據'部分我們要做什麼而不是'顯示'

編輯: 我應該這樣說:如果你希望你的數據完全獨立於顯示器,你應該考慮將頁面定義爲僅用於xml,並使用xsl來定義佈局。 xsl與css結合,將顯示從數據中徹底抽象出來。

+0

哈哈,感謝您的大喊!誠然,忘了提及XSL。 – JasonV 2009-06-03 23:58:38

+0

NP :)當有人說我正在重申的一些事情時,我總是提到它......看起來很公平 – 2009-06-04 00:07:56

2

HTML仍定義了元素的層次結構。

2

HTML以邏輯部分劃分頁面。然後,CSS對這些部分應用某種外觀/風格/樣式。

如果您想要更改頁面佈局以在另一個頁面中包含一個部分,您別無選擇,只能修改您的HTML,因爲HTML在頁面佈局上具有角色。

0

你實際上可以使用除CSS之外的任何東西來移動塊。妥協總是歸結爲你的CSS技能有多好,以及你在追求或關心的舊版瀏覽器有多大的兼容性。 CSS可以做什麼是有限制的,所以是的,HTML絕對有一定的作用。

0

可以更改div的「源順序」或使用css更改位置。但是,如果只更改html更實用,那麼就沒有其他辦法了。在一天結束時,如果它的更重要的內容,那麼源應該反映它的語義原因。

4

它確實在兩個層面:

首先,元素的順序仍然是重要的。 CSS浮動用於佈局很多,但它們也需要元素按照特定順序將事物放在正確的位置。例如,假設您有兩個按鈕:

<input type="button" value="Click Me"> 
<input type="button" value="No, Click Me!"> 

這些是彼此相鄰的。假設有人要求你將第二個按鈕移到最右邊。這是你怎麼做的:

<input type="button" value="No, Click Me!" style="float: right"> 
<input type="button" value="Click Me"> 

如果你不這樣做,第二個(浮動)按鈕會出現在另一個下面。

HTML仍然很重要的第二種方式是,仍然有一些東西需要HTML表格,因爲在純CSS中完全無法以瀏覽器兼容的方式(即通常支持IE6)或輕鬆地完成HTML表格。這不是純粹的CSS狂熱分子喜歡聽到的東西,但不管喜不喜歡,在現實世界中它仍然是真實的。

對於HTML電子郵件尤其如此。如果你認爲瀏覽器對CSS的支持不好,郵件程序支持是更糟糕的是。一般來說,你完全可以避免使用CSS電子郵件和HTML電子郵件,只是假裝它仍然是1999年。