Модераторы: Illuminaty
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Стиль кодирования, Больше тегов и атрибутов 
:(
    Опции темы
dm9
Дата 22.8.2006, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 29
Всего: 137



Сегодня я прочитал статью на сайте www.artlebedev.ru «HTML-шаблоны».

Основная мысль статьи состоит в том, что использование дополнительных тегов и атрибутов, которые часто стали игнорироваться с приходом CSS, может сделать сайт лучше.

Теги. Если мы используем <h2></h2> вместо <div class="h2"></div>, <li></li> вместо <div class="menuitem"></div> — это делает код (как HTML, так и CSS) более простым и читаемым. В дополнение, это позволяет сайтам хорошо отображаться без CSS, упрощает вёрстку.

Атрибуты. Если заметка про теги не явилась для меня откровением, то использование атрибутов явилось более серьёзным поводом для раздумий. Например, если мы пропишем таблице с данными border="1", то потом мы всё равно сможем переопределить (сбросить) это в CSS, но сделаем приятно пользователям, у которых CSS отключен. Также полезно будет прописывание align="..." ячейкам таблиц.

Ещё один интересный приём — текущий пункт меню выделять как <b class="selected"></b>. Жирное выделение мы сможем снять в CSS, а для нестандартных браузеров это позволит отобразить меню в приемлемом виде.

Не стоит забывать про версии для печати/КПК.

В статье есть ещё несколько интересных заметок. Тем, кто увлекается вёрсткой, рекомендую прочитать.


Предполагаю сразу вопросы, которые могут возникнуть у достаточно опытных верстальщиков.
«Зачем мне следить за тем, как отображается сайт без CSS, если сейчас это актуально менее чем для одного процента пользователей?»

Да, я тоже много думал об этом. Я бы ответил на этот вопрос следующим образом. Всегда надо думать, оправдают ли наши затраты полученную выгоду. Есть вещи, которые явно уменьшают затраты, повышая при этом пользу. Например, если мы будем использовать больше тегов вместо сотни стилей CSS, то это облегчит написание и, главное, сопровождение кода. Выгода от создания сайта, работающего корректно с отключенным CSS, может быть не столь очевидна. Но здесь я хочу обратить внимание вот на что. Если мы следим за тем, как отображаются наши сайты без CSS, затраты наши мы практически не увеличиваем. Возможно, на первом этапе это будет занимать какое-то время, но после того, как войдёт в привычку, это не будет обременять нас. Например, что проще — прописать <b style="selecteditem"></b>, или <span style="selecteditem"></span>? Да никакой разницы нет. То есть затраты остаются почти теми же. А вот полученная польза увеличивается. Потому что существует хотя бы сотня пользователей во всём мире, которые пользуются совсем старыми браузерами. И существует много тысяч пользователей, которые сидят на модемах/GPRS. И иногда у них обрывается связь как раз во время загрузки CSS-файла (у меня, например, на GPRS частенько CSS подгружается намного позже основной страницы). И если можно с теми же затратами облегчить чтение сайта этим пользователям — наверное, правильно будет это сделать.

Поэтому пусть наш код будет красивым smile


Это сообщение отредактировал(а) dm9 - 22.8.2006, 13:17
PM MAIL ICQ   Вверх
faost
Дата 22.8.2006, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 114
Регистрация: 5.11.2004

Репутация: 1
Всего: 2



Цитата

Если мы используем <h2></h2> вместо <div class="h2"></div>, <li></li> вместо <div class="menuitem"></div> — это делает код (как HTML, так и CSS) более простым и читаемым.

Неужели кто-то использует вместо <h2> <div class="h2">? Просто непонятно, какой смысл, если всегда можно переопределить h2 в стилях

Цитата

В дополнение, это позволяет сайтам хорошо отображаться без CSS

А зачем это нужно?

Цитата

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

А вы таких встречали?

Цитата

Например, если мы будем использовать больше тегов вместо сотни стилей CSS, то это облегчит написание и, главное, сопровождение кода.

Написание и сопровождение кода облегчит полное отделение верстки от дизайна, о чем давно уже книжки написаны. 
Например, "Философия CSS-дизайна", написаная по мотивам сайта csszengarden.com, в котором сверстан один макет, и для него сторонние дизайнеры пишут css-файлы с дизайном (сам макет - http://csszengarden.com/zengarden-sample.html, а вот один из многочисленных вариантов дизайна к нему - http://csszengarden.com/?cssfile=/194/194.css&page=0). Т. е. это конкретный пример выгодны такого подхода. г-н Токмаков в конце статьи и приводит к этому выводу, только он опоздал года на 3-4 =)




Это сообщение отредактировал(а) faost - 22.8.2006, 13:07
--------------------
Если у вас нет проблем, значит вы уже умерли
PM MAIL   Вверх
dm9
Дата 22.8.2006, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 29
Всего: 137



faost, большое спасибо за отзыв.
Я только замечу, что Лебедев — не автор данной статьи. Ещё, в данной статье мы не говорили об отделении дизайна от информации и смысл статьи нисколько не противоречит данному отделению smile Говорилось о другом, как в моём сообщении, так и в тексте самой статьи. Наверное, просто надо было прочитать то, что написано, перед тем, как отвечать smile Прошу воспринимать не как «наезд», а как предложение smile

Добавлено @ 13:14 
Ага, что Лебедев — не автор, уже было замечено и исправлено. Спасибо smile

PM MAIL ICQ   Вверх
faost
Дата 22.8.2006, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 114
Регистрация: 5.11.2004

Репутация: 1
Всего: 2



Да вроде как в статье говорится об осмысленном использовании тегов html и в конце приводится пример своей верстки. Но это все уже давно описано и человек зачем-то изобретает велосипед, чему я искренне удивляюсь =)
--------------------
Если у вас нет проблем, значит вы уже умерли
PM MAIL   Вверх
Illuminaty
Дата 22.8.2006, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


/*Антон Захаров*/
***


Профиль
Группа: Комодератор
Сообщений: 1238
Регистрация: 19.3.2005
Где: Россия, Казань

Репутация: 25
Всего: 56



dm9, согласен с тобой.
К этому можно еще добавить верстку различных меню, используя <ul>,<li> и <a>
PM MAIL ICQ   Вверх
R.M.
Дата 23.8.2006, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Анархист
****


Профиль
Группа: Участник
Сообщений: 2164
Регистрация: 8.6.2005
Где: Питер

Репутация: 9
Всего: 30



Цитата(faost @  22.8.2006,  14:05 Найти цитируемый пост)
Неужели кто-то использует вместо <h2> <div class="h2">? Просто непонятно, какой смысл, если всегда можно переопределить h2 в стилях

Встречный вопрос: а какой смысл переопределять стиль тега <h2> если можно задать скажем тегу <span> нужный стиль и не париться с убиранием ненужных отступов и т.п.?

dm9, как я понимаю отделение CSS от HTML-кода существует так же и для упрощения редактирования внешнего вида страницы, т.е. скажем проще прописать font-weight: bold; в одном стиле чем пробежать несколько шаблонов в котором надо будет поставить <b></b>. 
Вобщем-то статья ничего, но не всегда так нужно делать smile


--------------------
Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека.

Nokia LifeStyle - Всё для смартфонов Nokia 
PM MAIL WWW ICQ   Вверх
Illuminaty
Дата 23.8.2006, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


/*Антон Захаров*/
***


Профиль
Группа: Комодератор
Сообщений: 1238
Регистрация: 19.3.2005
Где: Россия, Казань

Репутация: 25
Всего: 56



Цитата(Куксикус @  23.8.2006,  12:08 Найти цитируемый пост)
а какой смысл переопределять стиль тега <h2>

Хотя бы для индексации сайта в поисковиках.


Куксикус, можно сверстать весь сайт на одних div'ах (изврат), прописав стили для каждого элемента, но логики в этом не будет. То есть ты сам через некоторое время не сможешь понять что там написано...
Плюс опять же теги <strong> лучше индексируются поисковиками чем <span style="font-weight: bold;">
Для использования XSLT преобразований тоже будет лучше разбавлять свой код другими тегами окромя <div>.

И напоследок пример XML кода, в котором вся логика вынесена.. куда вынесена - сами решайте smile
Код
<?xml version="1.0" encoding="UTF-8"?>
<a type="root">
    <a type="head">
        <a type="title">Заголовок</a>
    </a>
    <a type="body">
        <a type="h1">Бла Бла Бла</a>
        <a type="href">ссылка</a>
        <a type="table">
            <a type="row">
                <a type="cell">1</a>
                <a type="cell">2</a>
            </a>
            <a type="row">
                <a type="cell">3</a>
                <a type="cell">4</a>
            </a>
        </a>
        <a type="footer">Ну как?</a>
    </a>
</a>

PM MAIL ICQ   Вверх
skyboy
Дата 23.8.2006, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 6
Всего: 260



Цитата(Illuminaty @  23.8.2006,  10:42 Найти цитируемый пост)
И напоследок пример XML кода, в котором вся логика вынесена.. 

красивый и интуитивно понятный код smile 
Цитата(Куксикус @  23.8.2006,  10:08 Найти цитируемый пост)
проще прописать font-weight: bold; в одном стиле чем пробежать несколько шаблонов в котором надо будет поставить <b></b>

что мешает сделать 
Код

b {font-weight: NORMAL}
?
зато, как уже неоднократно было подмечено, при недогруженных стилях, точно так же, как и при отключенных стилях, всё будет нормально выглядеть. 
dm9, спасибо за ссылку на статью. Очень пригодится.
PM MAIL   Вверх
Illuminaty
Дата 23.8.2006, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


/*Антон Захаров*/
***


Профиль
Группа: Комодератор
Сообщений: 1238
Регистрация: 19.3.2005
Где: Россия, Казань

Репутация: 25
Всего: 56



skyboy, только 
Код

b {font-weight: bold;}
  smile 
PM MAIL ICQ   Вверх
R.M.
Дата 23.8.2006, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Анархист
****


Профиль
Группа: Участник
Сообщений: 2164
Регистрация: 8.6.2005
Где: Питер

Репутация: 9
Всего: 30



Illuminaty, он про то, что если везде стоит <b> то не стоит его убирать а можно прописать ему стиль чтобы жирность пропала smile

skyboy, но я то имел ввиду обратное действие smile


--------------------
Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека.

Nokia LifeStyle - Всё для смартфонов Nokia 
PM MAIL WWW ICQ   Вверх
skyboy
Дата 23.8.2006, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 6
Всего: 260



Цитата(Куксикус @  23.8.2006,  14:00 Найти цитируемый пост)
Illuminaty, он про то, что если везде стоит <b> то не стоит его убирать а можно прописать ему стиль чтобы жирность пропала

Угу. Именно smile Спасибо.
Цитата(Куксикус @  23.8.2006,  14:00 Найти цитируемый пост)
skyboy, но я то имел ввиду обратное действие

А я имел в виду, что можно определить одинаковый класс для разных участков. И отключать/включать жирность независимо друг от друга. А если говорить про отключенную обработку CSS и про то, что даже <b style="font-weight: NORMAL;"> станет жирным, так ещё неизвестно, что хуже: <span style="font-weight: BOLD;"> без жирности, или <b style="font-weight: NORMAL;"> с жирностью. Учитывая, что выделение шрифтом применяется только для стОящих элементов(заголовки, смысловые ударения), то я за второй вариант - пущай уж лучше "лишние" элементы выделяются жирным, чем совсем без выделения быть...
Illuminaty, я понял, что мне больше всего понравилось в приведенном тобою коде. Я представил, как средствами DOM буду искать ссылки  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.0941 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.