Показано с 1 по 20 из 20

Тема: id & class

  1. #1

    Регистрация
    15.05.2005
    Сообщений
    41
    Я просомтрел множество css сайтов и там очень часто используют ID скажите какое принцепиально отличение id от класса? кро ме того что id Это иднивидуальный стиль.
    class таким же успехом можно названать единоразово.

  2. #2

    Регистрация
    31.05.2005
    Сообщений
    10

    Сообщение

    Почитай здесь [Только зарегистрированные пользователи могут видеть ссылки. ]. Принципиального различия нету, ты правильно мыслишь - класс применяется сколько угодно раз, ИД - только один. Но класс ещё и может относиться к любым элементам.

    Раз всё знаешь, чего спрашивать?

  3. #3

    Регистрация
    15.05.2005
    Сообщений
    41
    Так мне и интересно зачем Люди ID юзают я понимаю что если еиспользует Ява т тогда да там через id можно выполнять разные действия.
    Тотже abcnews.go.com я счтаю что хорошо сверстан... но уних ID шников немеренно.

  4. #4

    Регистрация
    08.03.2005
    Адрес
    этих
    Сообщений
    275
    Незнаю как в нынешних броузерах, но вот во всяких Операх <6.какогототам и Фаирфоксях - ID глючат... так что с ними надо аккуратно верстать странички =)

    З.Ы.
    А вапще время тех браузеров прошло - так что верстайте и не заморачивайте голову всякими ID... )

  5. #5
    MANIX, потому что можно сделать одинаковый стиль, например текста, для всех объектов внутри тэга с заданным id.

  6. #6

    Регистрация
    17.08.2005
    Сообщений
    22
    2GoDoom, приведите пример, где id глючат. На этом форуме модно, что ли, писать, что id глючат?

  7. #7

    Регистрация
    18.08.2005
    Адрес
    Тольятти
    Сообщений
    16
    Aishek, это кто тебе сказал что ИД можно применять только один раз??? Глупость какая...
    Разница еще в том, что у ID "вес" больше, чем у класса. Т.е. если применить на один элемент и класс и ИД, по элементу присвоятся параметры ИДа.
    Я обычно применяю ИДы для всего. Не зню почему. Они короче пишутся =)

  8. #8

    Регистрация
    12.04.2004
    Адрес
    Екатеринбург
    Сообщений
    84
    2GoDoom, просьба больше не писать эту информацию без ссылок на источники, т. к. ну очень уж сомнительна
    Тёма, да, один ID можно применить хоть сколько раз. И самое страшное то, что в браузерах это будет корректно отображаться. Но это если полностью забить на логику и на валидатор от W3C.

    А вообще, для меня смысл блочной вёрстки именно в её логичности.

  9. #9

    Регистрация
    09.02.2004
    Адрес
    Литва/Вильнюс
    Сообщений
    359
    #header h1 {} — сколько хеадеров? 1 вроде...

    .header h1 {} — сколько хеадеров? много как бы...

    Чувствуете разницу в восприятии?

    И кроме того, ид имеют больший приоритет над классами, в 10 раз!

  10. #10

    Регистрация
    08.03.2005
    Адрес
    этих
    Сообщений
    275
    про источники и всё такое - я говорю о том, что когда то было - и чего когда то придерживался, дабы было много глюков и багов с этим (именно с тем, что броузеры старые не все ИД поддерживали) - сча все нормально... искать ссылки на источники - мне влом... поищите в Яндексе

  11. #11

    Регистрация
    31.05.2005
    Сообщений
    10

    Сообщение

    Originally posted by synchro@Aug 22 2005, 17:00
    2GoDoom, просьба больше не писать эту информацию без ссылок на источники, т. к. ну очень уж сомнительна
    Тёма, да, один ID можно применить хоть сколько раз. И самое страшное то, что в браузерах это будет корректно отображаться. Но это если полностью забить на логику и на валидатор от W3C.

    А вообще, для меня смысл блочной вёрстки именно в её логичности.
    <div align='right'>[Только зарегистрированные пользователи могут видеть ссылки. ]
    [/quote]

    Согласен на все 200%.

    А Тёме посоветую ещё раз прочитать спецификацию. Без обид.

  12. #12

    Регистрация
    31.05.2005
    Сообщений
    10
    Originally posted by 2GoDoom@Aug 22 2005, 13:22
    Незнаю как в нынешних броузерах, но вот во всяких Операх <6.какогототам и Фаирфоксях - ID глючат... так что с ними надо аккуратно верстать странички =)

    З.Ы.
    А вапще время тех браузеров прошло - так что верстайте и не заморачивайте голову всякими ID... )
    <div align='right'>[Только зарегистрированные пользователи могут видеть ссылки. ]
    [/quote]

    Ересь какая-то. Не верю. Всегда верстаю под Оперу, Файрфокс и Эксплорер - везде с ИД нормально.

  13. #13

    Регистрация
    20.07.2005
    Сообщений
    15
    Народ читайте &#39;Спецификация HTML 4.01&#39;
    Вот Параграф про id и class:

    7.5.2 Идентификаторы элемента: атрибуты id и class

    Определения атрибутов

    id = name [CS]
    Устанавливает имя элемента. Имя должно быть уникальным для данного документа.
    class = cdata-list [CS]
    Устанавливает имя класса или набор имён классов для элемента. Любому количеству элементов может быть назначено то же имя или имена класса. Множественные имена классов могут разделяться пробельными символами.

    Атрибут id назначает элементу уникальны идентификатор (который может проверяться разборщиком SGML). Например, следующие параграфы различаются значениями своих id:

    <P id="myparagraph"> Этот параграф имеет уникальное имя.</P>
    <P id="yourparagraph"> Этот параграф тоже имеет уникальное имя.</P>

    Атрибут id имеет несколько ролей в HTML:

    * переключатель таблиц стилей;
    * anchor/якорь назначения для гипертекстовых ссылок;
    * как значение для ссылки на конкретный элемент из скрипта;
    * как имя объявленного элемента OBJECT;
    * для общих надобностей обработки в ПА (напр., для идентификации полей при извлечении данных из страниц HTML в базы данных, переводе документов HTML в другие форматы и т.п.).

    Атрибут class одновременно назначает элементу одно или более имён классов; можно сказать, что элемент принадлежит данным классам. Имя класса может разделяться несколькими объектами элемента. Атрибут class имеет несколько ролей в HTML:

    * переключатель таблиц стилей (если автор захочет назначить информацию о стиле нескольким элементам);
    * для общих надобностей обработки в ПА.

    В следующем примере элемент SPAN используется вместе с атрибутами id и class для разметки сообщений документа. Сообщения появляются в английской и французской версиях.




    Variable declared twice


    Undeclared variable


    Bad syntax for variable name




    Variable d&eacute;clar&eacute;e deux fois


    Variable ind&eacute;finie


    Erreur de syntaxe pour variable

    Следующие правила CSS (Каскадной Таблицы Стилей) могут сообщить визуальным ПА, что необходимо отобразить информационные сообщения зелёным цветом, предупреждения - жёлтым, а ошибки - красным:

    SPAN.info { color: green }
    SPAN.warning { color: yellow }
    SPAN.error { color: red }

    Обратите внимание, что французское "msg1" и английское "msg1" не могут появляться в одном документе, поскольку они разделяют одно значение id. Авторы могут также использовать атрибут id для уточнения представления определённых сообщений, делать их якорями назначения и т.п.

    Почти любому элементу HTML может быть назначен идентификатор и информация класса.

    Предположим, например, что мы создаём документ о языке программирования. Документ содержит несколько отформатированных примеров. Мы используем элемент PRE для форматирования примеров. Мы назначаем также цвет фона (зелёный) всем объектам элемента PRE, принадлежащих классу "example".

    <HEAD>
    <TITLE>... заголовок документа ...</TITLE>
    <STYLE type="text/css">
    PRE.example { background : green }
    </STYLE>
    </HEAD>
    <BODY>
    <PRE class="example" id="example-1">
    ...здесь - код примера...
    </PRE>
    </BODY>

    Установив в этом примере атрибут id, мы можем
    (1) делать ссылки на класс и
    (2) переопределять информацию стиля класса с помощью объекта информации стиля.

    Примечание. Атрибут id разделяет то же пространство имён, что и атрибут name, когда используется для именования якоря. См. дополнительно раздел якоря с id.

    P.S. Следуйте правилам а не делайте от себя и ничего, нигде не будет глючить.
    Windows это правило не касается.

  14. #14
    Наверное мир рухнет, если сделать несколько объектов с одинаковым айди.
    Что вы все так циклитесь на спецификациях?

    Вот почему-то соблюдать закон никто не хочет. А спецификации соблюдать стало модным... (может не то слово, но смысл тот же)

    Либо делайте всё логично, либо делайте всё наиболее оптимально. А делать и так и так конечно можно. Но не нужно при этом разделять вещи, которые нужно делать логично, и вещи которые нужно делать оптимально.

  15. #15

    Регистрация
    17.08.2005
    Сообщений
    22
    Кирилл, а если сделанное логично одновременно является оптимальным?

  16. #16
    kost, такое бывает редко. Но случай с объектами с одинаковым айди не тот.

  17. #17

    Регистрация
    20.07.2005
    Сообщений
    15
    Ну к примеру у тебя несколько объектов с одинаковым id, и тебе надо с одним через DOM поработать, так ты че будеш селую цепочку по дереву объектов прописовать чтоли, да работать будет, а потом информация добавиться и дерево объектов изменится и все пойдет на ..., и че тогда ? заново цепочку прописовать ?

  18. #18
    designuser, я же сказал - если не критичны объекты с одинаковыми именами, так зачем изобретать велосипед?

  19. #19

    Регистрация
    18.08.2005
    Адрес
    Тольятти
    Сообщений
    16
    Originally posted by synchro@Aug 22 2005, 22:00
    [b]Тёма, да, один ID можно применить хоть сколько раз. И самое страшное то, что в браузерах это будет корректно отображаться. Но это если полностью забить на логику и на валидатор от W3C.
    Так если у меня на странице должны быть два абсолютно одинаковых блочных элемента, зачем применять для них два разных ИД&#39;а? Зачем забивать файл цсс дублируемыми данными? Объясните.

    Если только для того чтобы код не подавившись скушал валидатор - пукал я на такое счатье.

  20. #20

    Регистрация
    20.07.2005
    Сообщений
    15
    Originally posted by Тёма@Sep 1 2005, 05:34
    Так если у меня на странице должны быть два абсолютно одинаковых блочных элемента, зачем применять для них два разных ИД&#39;а? Зачем забивать файл цсс дублируемыми данными? Объясните.
    <div align='right'>[Только зарегистрированные пользователи могут видеть ссылки. ]
    [/quote]


    Читай спецификацию выше, там четко написано (вынужден повторить - прошу простить):
    id = name [CS]
    Устанавливает имя элемента. Имя должно быть уникальным для данного документа.
    class = cdata-list [CS]
    Устанавливает имя класса или набор имён классов для элемента. Любому количеству элементов может быть назначено то же имя или имена класса. Множественные имена классов могут разделяться пробельными символами.

    А это значит по русски что id это уникальное имя и далжно встречаться 1 раз на странице, тогда как cclass это описание класса обьекта и может встречаться скока угодно раз на странице, отсюда ответ что если два одинаковых по стилям объекта то применяй class, вообще в принцыпе можеш все делать на классах, id тебе надо лиш для того чтобы к примеру через DOM менять параметры (атребуты,значение,добавле ие/удаление элементов,и.т.д.) объектов или получать параметры (атрибуты,и.т.д.).

Похожие темы

  1. Использование в атрибуте class двух стилей
    от Petrav в разделе Вёрстка сайта
    Ответов: 20
    Последнее сообщение: 07.01.2007, 21:02
  2. Несколько стилей в аттрибуте class
    от Petrav в разделе Вёрстка сайта
    Ответов: 3
    Последнее сообщение: 13.12.2006, 11:41
  3. id или class в чем разница? и как использовать?
    от MANIX в разделе Вёрстка сайта
    Ответов: 3
    Последнее сообщение: 27.05.2005, 13:38

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •