CSS: разница между id и class

12
28
На сайте с 31.10.2009
Offline
116
2816

Кто-нибудь подскажет разницу между id и css?

Мануалы толкуют, что id должен использоваться всего один раз, но ведь браузер и сто одинаковых id нормально обрабатывает.

Тут фишка только в валидности W3C?

Борец за чистоту Интернета.
4arger
На сайте с 17.12.2008
Offline
95
#1

2038, типа того...

[Удален]
#2

Элемент может иметь только один id.

Определённый id может присутствовать на странице только один раз.

а Class может быть несколько у элемента

_Snake_
На сайте с 06.12.2010
Offline
151
#3
2038:
но ведь браузер и сто одинаковых id нормально обрабатывает.

Не факт, ты берёшь в учёт гигантов опера, фф, ie. Завтра появится какой-нибудь браузер который подкупит пользователей своей простотой, красотой и т.д. А он возьмёт и не будет обрабатывать твои сто одинаковых id, что потом делать? Перевёрстывать? И потом скажи, что создатели браузера дураки, они ведь при написании руководствовались стандартами.

Ещё не забывай, что кроме CSS; id, class, name... использует JS и там, где тебе понадобилось бы использовать несколько селекторов, придётся изобретать трёх этажные конструкции.

dkameleon
На сайте с 09.12.2005
Offline
386
#4
2038:

Мануалы толкуют, что id должен использоваться всего один раз, но ведь браузер и сто одинаковых id нормально обрабатывает.
Тут фишка только в валидности W3C?

тут фишка в том, что браузеры пытаются решить проблемы кривизны рук, упорно верстающих все через ИД :)

буржуи даже подробно расписали то и зачем использовать положено:

http://www.w3.org/TR/html401/struct/global.html#h-7.5.2

Дизайн интерьера (http://balabukha.com/)
drunas
На сайте с 11.08.2008
Offline
49
#5

В одном из семинаров Яндекса рекомендовали просто забыть про id и верстать всё классами

слушаю 95.2 - rock radio (http://timerider.ru)
28
На сайте с 31.10.2009
Offline
116
#6
_Snake_:
Не факт, ты берёшь в учёт гигантов опера, фф, ie. Завтра появится какой-нибудь браузер который подкупит пользователей своей простотой, красотой и т.д. А он возьмёт и не будет обрабатывать твои сто одинаковых id, что потом делать? Перевёрстывать? И потом скажи, что создатели браузера дураки, они ведь при написании руководствовались стандартами.

Ещё не забывай, что кроме CSS; id, class, name... использует JS и там, где тебе понадобилось бы использовать несколько селекторов, придётся изобретать трёх этажные конструкции.

Спасибо.

С JS знаком слабо, но подозревал, что проблемы (при отсутствии других проблем) могут возникнуть именно в нём.

[Удален]
#7

8. Используйте «id» вместо классов, где это возможно

http://habrahabr.ru/blogs/jquery/52201/ не думаю что эта статья устарела на столько что это правило уже не действует.

dkameleon
На сайте с 09.12.2005
Offline
386
#8
awilum:
не думаю что эта статья устарела на столько что это правило уже не действует.

название статьи: Закрепляем jQuery — 25 отличных советов

статья написана с учетом определенной специфики ;)

kil
На сайте с 03.04.2006
Offline
84
kil
#9
awilum:
8. Используйте «id» вместо классов, где это возможно
http://habrahabr.ru/blogs/jquery/52201/ не думаю что эта статья устарела на столько что это правило уже не действует.

Пример на Хабре показателен, но не более того.

O
На сайте с 29.05.2008
Offline
195
#10

Еще id делает закладки и при открытии sitename.name/#id будет происходить переход к блоку с этим id. Если id будет +1 - ошибка, но браузер откроет первый ближний элемент.. Вот поэтому и запретили в специфики +1 id.

ID использую для js скриптов, input (чтобы label был валидным (атрибут for)).

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий