2008-10-28 25 views
3

如果我有類的名稱,如「左」,「右」,「清除」和XHTML像正在使用類似'正確'認爲不好的做法?

<a href="index.php" class="right continueLink">Continue</a> 

使用CSS像

.right { 
float: right; 
} 

我知道這不是一個語義的名字,但它有時會讓事情變得更容易。

無論如何,你有什麼想法?

+0

根據引導,'拉right`是好的。 – alex 2015-07-03 07:09:27

回答

14

我不認爲這是一個非常好的主意。現在,當你(或未來的維護者)去改變你的網站佈局時,你必須改變.right{float:left;}(顯然是一個壞主意),或者瀏覽你所有的HTML文件並將right改爲left

爲什麼你想讓那個特定的鏈接正確地浮動,而另一個.continueLink的不是?使用該問題的答案爲該鏈接選擇更具描述性的類名稱。

+0

我同意你的看法。我正在編輯一個不關心語義的現有系統,所以我決定用CSS做這件事來讓自己更輕鬆。雖然我不會爲我自己的項目做這件事。 – alex 2008-10-28 04:58:08

+1

在幾乎所有情況下,我完全同意你的看法。但是,有一種情況我無法解決,除了使用「左」和「右」之外:在文章中放置浮動圖像。確切的選擇或多或少是隨意的;除此之外,沒有別的東西可以區分圖像。 – 2008-10-29 19:36:45

+0

在鮑比傑克描述的情況下,我會說沒關係。儘管可以通過使用Javascript將這些類添加到其他圖像來簡化標記,以便浮動方向發生變化。 – 2008-11-06 15:59:04

1

爲避免混淆,避免使用與CSS規範中的值相同的名稱是明智的。特別是在多個開發人員使用同一個應用程序的情況下。

除此之外,我看到沒有問題。我會限定這樣的右側或左側名稱:menuleft,menuright等

6

CSS是關於結構HTML頁面的的表現。

意味着它的類應該代表文檔的結構('article','extra-links','詞彙表','introduction','conclusion',...)。

你應該避免鏈接到物理表示任何類(「左」,「右」,「腳註」,「圖片的標題說明」,...),因爲,作爲Zen Garden如此清楚地說明,你可以決定以非常不同的方式放置任何div。

+0

你是對的,但「腳註」是一個不好的例子,因爲它實際上確實描述了文檔的結構元素(不管它在哪裏佈置)。它與「HEADing」 – nickf 2008-10-28 08:18:26

+0

沒有什麼不同,我知道你會這麼說;-)但是腳註的定義明確指的是「頁面的底部」,即「物理」位置。我更傾向於使用更通用的術語,比如'comments'或'relatedNotes'或簡單的'notes'。見http://dictionary.reference.com/browse/footnote – VonC 2008-10-28 09:48:55

2

純粹主義者會說不這樣做,實用主義者會說它很好。但是純粹主義者會將.right定義爲float: left

1

作爲一個純粹主義者,我說不要這樣做。由於前面提到的原因。

作爲一個實用主義者,我只是想說,我從來沒有看到網站返工涉及到純粹的html更改而沒有css,或純css沒有html,僅僅是因爲這兩個部分都是在考慮其他部分的情況下開發的。所以,實際上,如果其他人需要更改頁面,我敢打賭,我的薪水他們會改變html和css。

以上是純粹主義者常常傾向忽視的東西,即使它是現實。但底線;不,請避免使用諸如「右」的className。 :-)

0

。權和其他類這樣的,肯定使用戶能夠快速編寫創建連接到它float:right規則標籤,但我認爲這種方法有弊多利少:

通常一類風格,在一個單一float:right;將會缺少一些東西,因爲「a」標記不是塊級元素,所以您的示例只會在其他類規則中包含display:block的情況下浮動。此外,浮動元素通常不需要具有附加高度的寬度。這意味着你的例子中的代碼需要額外的代碼來完成它所說的事情,而當你必須改變你的css時,你必須在兩個地方搜索。

我傾向於通過將頁面劃分爲具有唯一標識的不同div標籤來設置我的html樣式,然後通過像這樣繼承樣式來設置這些div中的元素。

div#sidebar { float:right; width:200px; } 
div#sidebar ul { list-style-type:none; } 

這使得分區我的CSS文件,因此它很容易找到的CSS-代碼風格特定標籤,但如果你介紹.right和其他類你開始驅散規則進入css文件的不同區域,使得網站更難以維護。

我認爲擁有一個非常通用的類的想法源於希望通過改變樣式表中的一些規則來改變網站的整個佈局,但我必須說,在我的8年的網站開發與30+,在我的腰帶下的不同網站我一次也沒有改變網站的佈局,並重新使用HTML。

我做過無數次的事情是對頁面區域進行小的調整,或者是由於設計的小改動或者是對新瀏覽器的引入。所以我都希望把我的CSS分成幾塊,這樣可以很容易地找到我正在尋找的規則,而不是將代碼放在不同的地方來實現更短的樣式表。

問候 加斯帕豪格

0

呀,語義上講是錯誤的,但是,例如,有些時候我的身體複製塊內的圖像定位時間,我給它們的類「權」。

也許「alt」是更合適的類名稱。

相關問題