How Many HTML Elements Can You Name in 5 Minutes?
чб
[info]evgeny

Впервые публикую результат тестов в ЖЖ и, пожалуй, это один из первых сетевых тестов, которые я прошел вообще.

55
Tags:

Сложные формы и таблицы / Writeboard
чб
[info]evgeny

Текст этой заметки был своего рода испытанием для Writeboard. Основную часть я давно написал на PDA, потом забросил текст во Writeboard, немного подкорректировал его и пригласил [info]zr и [info]rossomachin поучаствовать в написании. Со своими задачами Wrteboard справился отлично — теперь я подумываю о покупке аккаунта в Backpack, т. к. с его помощью очень удобно управлять «досками». Далее, собственно, сам текст.

* * *

Безтабличная верстка — это хорошо и правильно. Только не надо перегибать палку, ладно? Сложные HTML-формы оформить средствами одного лишь CSS нельзя. Настоящие CSS-самураи сейчас потянутся за своими мечами, поэтому я сделаю маленькую оговорку — можно, но ненужно. Потратить на одну форму, которая делается за полчаса таблицами, 5 или 10 часов рабочего времени — это верх расточительства и отсутствие гарантий корректной работы.

Для себя я сформулировал несколько причин, оправдывающих такой подход.

  1. Бумажные анкеты — прямой предок современных интерактивных форм. Они практически всегда выглядят как таблицы. Более того, они таблицами являются. Чтобы убедиться в этом достаточно представить анкету заполненной и без полей ввода. Отсюда следует вторая причина.
  2. У форм и анкет есть область ввода данных и название этой области. Эти понятия идеально вписываются в теги <td> и <th>, соответственно. Если форма состоит из нескольких логических частей, и по какой-то причине использовать <fieldset> нельзя, то ее можно разделить с помощью <thead>, <tbody> и <tfoot>. Кроме того, никто не мешает использовать и <fieldset>, и логическое деление таблицы одновременно.
  3. Таблицу можно в несколько раз быстрее и надежнее заставить выглядеть так, как надо. При этом можно обойтись без компромиссных решений, когда внешний вид приносится в жертву красивому кода. Посетители код не смотрят.
  4. Семантика страницы не страдает, а выигрывает — можно связать в отдельные куски такие части формы, которые не заслуживают <fieldset>.
  5. Обратная совместимость (backward compatibility) на высоте.
  6. В конце концов это просто разумно — не ломиться в открытую дверь.

Важное замечание: всё вышеперечисленное относится к вёрстке сложных форм — тогда как простые формы можно и нужно верстать, активно используя соответствующие возможности CSS и XHTML. Разумный подход к делу — залог успеха в работе.


Home