А Вы ставите кавычки в атрибутах тегов при верстке HTML (HTML4, HTML5)

     

    Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

    А Вы ставите кавычки в атрибутах тегов при верстке HTML (HTML4, HTML5)

    • 67,1%Всегда ставлю и ненавижу тех, кто не делает этого!560
    • 15,3%Ставлю, но принимаю вариант и без кавычек128
    • 2,2%Не заморачиваюсь, тем более если валиадтор разрешает18
    • 1,2%Стараюсь не ставить, там где это возможно10
    • 2,0%Валидаторы зло!17
    • 12,2%Я использую XHTML и этим все сказано!102

    Комментарии 31

      –11
      Неуклонно ставлю во всех атрибутах, кроме цифровых (то есть, например, height, width, hspace).
        +25
        Повинен смерти!!!
          +10
          Это лицемерие :)
          +12
          В свое время много работал с XHTML (XHTML Mobile), и привык что все должно быть строго. Все теги закрыты, все атрибуты только в кавычках.

          На работе недавно пришла новая верстка для проекта. В ней небыло практически кавычек и код был вида:

          <html lang=ru>
          <meta charset=windows-1251 >
          ...
          <div class=someclass title=Element>


          Для меня было ужасно читать такой код. Я быстро наваял на баше скриптину, перевел все в «валидный» вид. Высказал претензию верстальщику и понеслось. Он категорически запретил ставить кавычки там где не надо ибо валидатор разрешает и стандартом разрешено. И кода должнобыть меньше, а кавычки утяжеляют страницу…

          Может я чего-то упустил в трендах верстки? оО
            +30
            Не, верстальщик — мудак. А еще мудак тот, кто решил использовать «windows-1251».

            Без кавычек очень легко допустить ошибку:
            <div class=someclass anotherclass title=Element>
            

            И использование кавычек «через раз» вносит раздор стилевого оформления:
            <div class="someclass anotherclass" title=Element>
            
              +4
              Полностью согласен. Но решил узнать мнение ибо может что-то поменялось, а я упустил. Все-таки без кавычек читается все адски ужасно.

              Так как времени на споры нет, надо работать, тоя просто сделал такой вот финт руками:

              for f in $(ls -l)
              do
                  f=${f%*.html}
                  fv=${f}_valid.html
                  sed -r 's~(class|href|src|target|rel|name|lang|charset|title|width|height|alt)=([^"][a-z0-9\-\/:.?&\#а-яёА-ЯЁ_]+)(\s|\/|>)~\1="\2"\3~gi' $f.html > $fv
              done


                –1
                Еще хуже когда кавычки принципиально ставят наоборот, вот так:
                <body onload='func1("param");' onresize='func2("param");'>
                  0
                  Воздержитесь от таких резких оценок, особенно если не собираетесь их аргументировать.

                  Кавычки в большинстве атрибутов нужны в первую очередь для удобочитаемости (не берем в расчет XHTML). Если кому-то легко читать код без кавычек в атрибутах — почему нет? Браузеру все равно, а понятие «красивый код» слишком субъективно, чтобы его оценивать. Для меня красивым является код, в котором нет необязательных тегов и не закрыты теги, которые можно не закрывать. То, что это многим кажется «некрасивым» для меня ровным счетом ничего не значит.

                  Насчет использования кавычек «через раз» — согласен. Но ведь заранее известно, какие атрибуты требуют кавычек, а какие — нет. Правда, получается, что большинство используемых и актуальных в наше время атрибутов все-таки требуют кавычек (class, style, title, …). Также помню о чьей-то чужой проблеме, когда старый браузер считал цвет, указанный в атрибуте в формате #XXXXXX, анкор-ссылкой в текущей странице. Кавычки лечили это поведение. Однако это было давно, в старом браузере, и не у меня. Об этом просто достаточно помнить, массовых неприятностей это не вызывает.

                  Таким образом если неиспользование кавычек разработчику не мешает, он отчетливо понимает, когда они нужны, а когда — нет, и использует их последовательно (а не через раз), то что в этом плохого?

                  Варианты «некрасиво» и «плохо читается» не рассматриваем: оба слишком субъективны, вплоне верю, что кому как.
                    0
                    Варианты «некрасиво» и «плохо читается» не рассматриваем: оба слишком субъективны, вплоне верю, что кому как.

                    Как раз такие варианты я и не рассматривал. Я указал две прямых проблемы. А вы кроме того, что вам — так нравится больше никаких аргументов не привели, только добавили ещё третью проблему отсутствия кавычек — «цвет, указанный в атрибуте в формате #XXXXXX» ;)
                      0
                      Разумеется никаких объективных аргументов тут нет и быть не может, о том и речь. Поэтому меня удивили агрессивные выпады в сторону человека, который сознательно выбрал один из вариантов.

                      Допустимо и работает и то, и другое. Выбираем то, что больше нравится. Когда нужны кавычки, а когда нет — известно заранее. По каким критериям можно определить «лучше/хуже» или «правильно/неправильно», если оба варианта допускаются спецификацией?

                      А про цвет — так это было в чем-то вроде оперы 7 или ie 5 (а то и 4), скорее историческая справка, чем реальная проблема.
                  +3
                  Если верстается нечто очень критичное к размеру страницы (например, на какой-нибудь конкурс мини-сайтов в 1 килобайт или нечто высоконагруженное, типа главной страницы гугла, то кавычки можно не ставить. Но вообще лучше ставить их всегда — меньше возможности допустить ошибку или вызвать невалидный код.
                    +3
                    То, что разработчики стандарта пошли на поводу у браузерописателей не дает право верстальщикам выключать свой мозг.

                    Ваш верстальщик — кретин. Подобный ужас и прополз в стандарт как раз из-за таких вот кретинов.
                      0
                      «на поводу у браузерописателей»?
                      Мне казалось, что парсер для более строгого стандарта написать проще. Я не прав?
                        +1
                        Именно данное попущение было изначально введено в браузерах, создатели которых хотели «адекватно» отображать все страницы, даже те которые были сверстаны неверно или нелогично. Из-за того, что почти все браузеры начали подобное поощрать и появились тысячи проектов с поломонной, но все-равно верно отображающейся версткой. Ограничения подобного поведения в стандарте означало вырубание половины существующих сайтов и никто в здравом уме подобный стандарт не примет.
                          +1
                          По-моему исторически сначала всё же вариант без кавычек был нормальный, т. к. возможностей разночтения не было, а стандарты в вебе исторически принимаются постфактум.
                      –1
                      Кода должно быть меньше, это правда. Загляните в HTML код, например, стартовой гугла.
                      0
                      Использую haml и немного кавычек (:
                        +1
                        ставлю, но в чужом коде вполне принимаю вариант с «чистыми» численными атрибутами.
                          +2
                          Вот что хабр животворящий делает. Переписка в ICQ

                          >… Ну и да — верстаем с кавычками, заебали вы меня…

                          Всем спасибо =)
                            +3
                            Обращайтесь) И да, поменяйте кодировку на вменяемую, а не устаревшую)
                              0
                              Это уже не от меня зависит, проект очень старый. Может быть со временем, но не сейчас…
                            0
                            Стараюсь ставить кавычки — очень удобно, если в редакторе включена подсветка. Ну и про несколько имен классов уже выше писали.
                              +1
                              всегда кавычки, рефлекторно ставлю уже
                              по другому не приемлю
                              выше уважаемые граждане объяснили зачем они нужны, подписываюсь
                                +2
                                Кавычки ставлю всегда. И тем не менее валидаторы — ЗЛО!
                                  +1
                                  Мне частенько приходится верстать HTML-письма для рассылки по клиентской базе. А почтовые клиенты, как я понял, понимают только HTML 3.2, всё остальное — каждый по своему, мало и не всегда (доколе?!? почему нельзя сделать нормальную поддержку CSS?). И вот, даже верстая в HTML 3.2 я считаю обязательным строго следовать правилам xhtml (кавычки для всех атрибутов, lowercase теги и аттрибуты, структура тегов и т.п.).
                                  • НЛО прилетело и опубликовало эту надпись здесь
                                    –2
                                    А зачем использовать кавычки? Пока только одну причину назвали:
                                    Без кавычек очень легко допустить ошибку:
                                    <div class=someclass anotherclass title=Element>

                                    Но это каким надо быть мудаком…
                                      0
                                      А что можно не ставить? o_O
                                        0
                                        В зависимости от доктайпа.
                                          0
                                          Это был сарказм
                                        0
                                        Классно когда много людей подключается к обсуждению. Истина где-то рядом)).

                                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                        Самое читаемое