#html #css #html-generation
#HTML #css #html-генерация
Вопрос:
Я хотел бы спросить о вашем опыте автоматической генерации HTML и о том, что следует учитывать верстальщикам для достижения максимальной стилизации? Пожалуйста, добавьте хорошие рекомендации и, пожалуйста, объясните их причину.
Я начну с 3 пунктов:
-
Вы создаете div или td или что-либо еще с текстовым содержимым.. Добавьте в него размах!
<div><span>text content</span></div>
вместо
<div>text content</div>
Причина: Иногда вам приходится применять другой стиль к текстовому содержимому. Если вы можете получить к нему доступ только косвенно через окружающий div, некоторые вещи невозможны.
-
Отставьте BRS за divs!
<div id="myId">foo bar</div><br>
вместо
<div id="myId">foo bar</div>
Причина: Допустим, вы решили оставить некоторые разделы плавающими слева, вам нужно очистить left после них. Вы можете сделать это сейчас с
div#myId br { clear: left; }
И если вам не нужен br, вы можете просто сделать:
div#myId br { display: none; }
Без этого добавления перемещение разделов становится настоящей проблемой, и вы не сможете правильно выровнять содержимое.
-
Это «должно» быть несложно, но все же: используйте классы и идентификаторы, чтобы вы могли правильно получить доступ к каждому элементу в CSS.
Хорошо, это то, что я выяснил, теперь ваша очередь расширить этот набор рекомендаций 🙂
Ответ №1:
пункт № 1: если ни у DIV, ни у SPAN нет класса или идентификатора, то их одинаково сложно стилизовать. Я бы тоже никогда не стал добавлять дополнительную разметку ради CSS. Я бы не стал предлагать этот конкретный метод.
пункт № 2: То же, что и выше. Я презираю системы, которые вносят дополнительную разметку в HTML.
пункт # 3: Да. Я определенно согласен с этим. Конечно, это легче сказать, чем сделать.
Я не уверен, какую «систему автоматической генерации» вы создаете, но давайте предположим, что это CMS. Таким образом, я бы рекомендовал следующее:
-
CMS не должна быть системой управления дизайном. Он должен управлять контентом.
-
На самом деле CMS не должна создавать никакого HTML (кроме семантической разметки самого контента, такого как абзац, список, теги blockquote и т.д.). HTML должен быть создан кем-то, кто управляет шаблонами. Должны быть шаблоны страниц, шаблоны разделов и шаблоны содержимого…все редактируемые разработчиком.
Например, WordPress хорошо справляется с этим.