Главная > Заметки, Размышления > Мысли о дивной верстке

Мысли о дивной верстке

Как-то не так давно, стучался «халтурщик» ко мне в асю, просил сверстать ему шаблоны, желательно в дивах. «Почему в дивах?» спросил я. «Чем не устраивает табличная верстка?», ответ вышел удручающий:

"таблицей — засмеют"

я в шоке от такого ответа, ужасно просто, что теперь мы работать должны не на качество, а на черт знает на что. Раньше я понимаю, таблицами верстали, нашлись умники, которые используя CSS И DIV начали верстать на них, если посмотреть в стандарт W3C то можно понять, что верстать можно не только на DIVах, а еще и P, SPAN, A, и другими объектами, задав им соответствующий стиль. НО! Таблицы ничто не заменит.

Кто возился с таблицами прекрасно понимают, что это жесткая структура в виде сетки, которая не порвется никогда, Каждая ячейка заключена между линиями сетки, которые жёстче некуда связаны между собой. Ведь дивы, в некоторых случаях, при внутреннем контенте, переполняющим его, может нарушить связь и переместить его ниже или выше соседа DIVа. С другой стороны это как раз удобно для верстки страниц для PDA и смартфонов, т.к. там мелкие разрешения экрана.

Но ведь компьютер куда мощнее любого сейчас PDA комуникатора, на которых даже джава скрипты не работают (на некоторых моделях браузеров). Раньше еще можно было задаваться мыслью о том, что табличная верстка и вложенных таблиц могла нагружать браузер из-за большого кол-ва элементов, так например ячейка таблицы будет выглядеть так:

<table><tr><Td></td></tr></table>

на самом деле в браузере она будет выглядеть так:

<table><tbody><tr><Td></td></tr></tbody></table>

а на дивах:

<div></div>

Видно что кол-во элементов у дивной верстки сокращено до минимума, а у таблиц куда больше их, что «засоряет» DOM модель браузера, делает дополнительные связи, свойства и методы для каждого элемента. Но в наши то времена, когда у всех почти безлимитный многобитный интернет, комы с последними процами, загрузить лишние пару килобайт + обработать все объектные данные кода, компу не дает никакой нагрузки.

По этому, программирование и верстка на дивах, это тоже самое что писать программу на ассемблере, кто-то решил выпендрится, и вбил всем в голову что это хорошо, а таблицы — смешно.

Возьмем к примеру Delphi Pascal версию 4−7, и выше, там без одной строчки кода, можно написать приложение, которое будет полноценным интерфейсом к базе данных. Нет, находятся умники (их дело конечно), котрые пишут этот же интерфейс на Си++ описывая каждый класс работы используя громозкие ActiveX компоненты...

Я веду все к тому, что Дивная и табличная верстка — это своего рода просто описание верстки, которая и там и там полностью валидна и понятна. И еще я не веду к тому, что бы не верстать на дивах, иногда, часть элементов сайтов, нужно верстать на дивах, например всплывающие окошки, которые быстрее будут подгружаться через AJAX Когда в них куда меньше объектного кода, т.к. при загрузке и показе, браузер парсит код и чем больше там тегов, тем медленнее происходит его парс.

Ускорить до максимума загрузку сайта используя дивы у вас не получится (кто пытается) ведь сокращая HTML код, вы увеличиваете CSS Файл, который тоже грузится, и парсится и присваивается каждому элементу страницы, как единично так и наследовательно от верхнего к нижнему.

По этому смысла верстать в Дивах если этого требует заказчик — нет, нужно объяснить все + и минусы данной темы, сказать, что вы лучше пишете на том, на чем умеете, на чем есть опыт, доказать заказчику то, для чего это, возможно вы будете поддерживать, возможно это удобнее в понимании и т.д.

Вот такие мои мысли по поводу «дивной» верстки.

Заметки, Размышления

  1. 26 Июнь 2009 из 19:13 | #1

    Эх неправда Ваша!

    В табличной вёрстке гораздо труднее писать правильные сайты!

    Для всех поисковиков нужен контент. И чем ближе он к началу сайта, тем лучше. Много лучше! Попробуйте это сделать в табличной вёрстке. Так, чтобы всё лишнее — шапка, меню, подвал были в конце сайта, а в самом начале был читый контент — весьма нетривиальная задача!

    Именно поэтому и нужно писать сайты на div-ах. Не всё же в рекламу вкладываться — сайт сам должен себя поднимать в поисковиках. Сайту свёрстанному в табличной форме это недоступно принципиально.

  2. 05 Июль 2009 из 0:03 | #2

    Аргументация «таблицами — засмеют», конечно же, сама смешна. Но блочная вёрстка всё же, в основном, себя оправдывает. Во-первых, как уже сказал Дмитрий, это гораздо оптимальнее для SEO. Во-вторых, хорошо свёрстанный блоками макет гораздо легче модифицировать, дополнять и развивать. В-третьих, таковая вёрстка, при должном подходе гораздо прозрачнее для понимания. Разделение данных и их представления — задача, конечно, иногда утопическая (если слишком радикально к ней подходить), но всё же очень полезная (если подходить с умом).

    Ещё момент — при вёрстке (как таблицами, так и блоками) сейчас очень часто приходится мыслить именно информационными блоками на странице, а не просто ячейками таблицы. Причина в том, что интерфейсы становятся всё более и более динамическими. И этот факт тоже молчаливо подталкивает к применению «дивной» (ух, диво дивное, =)) вёрстки.

  3. 06 Июль 2009 из 8:02 | #3

    :) Хороший аргументированный комментарий.

    Я обычно совмещаю тиаблицы и дивы, там где надо блок, который например будет заменятся AJAXом — делаю DIV в остальных случаях — таблицы

  4. Jonic
    19 Авг 2009 из 3:56 | #4

    Хочу заметить что двиная верстка экономит размер. CSS файл говорите увеличивается? А про кэширование браузера, не? Я тоже раньше верстал на таблицах, и то что я делал на таблицах и после изучения блочной верстки это небо и земля. Да, бывает иногда надо попариться, но, это даёт более эстетичный и экономичный вариант, к которому кстати, легко может применяться модернизация. Скажите мне, почему сейчас все конторы верстают по блочному? Очень просто. это реально лучше. Взять свёрстаный на таблицах сайт, посмотрите на него через мобилку, не особо мощьную. Что вы увидите? ничего хорошего, а дивная верстка отоброзиться именно так как вы и задумывали. Есть конечно разграничение и хаки, по сути самое отстойное это заставить ИЕ делать так-же как все. но с опытом начинаешь уже сразу писать кроссбраузерно, мне это удавалось и без хаков на довольно таки сложных страницах. причём с таблицами такой сайт был-бы в разы тяжелее. А между тем, что-бы выдать страницу, что происходит? происходит обработка запроса веб сервером, далее, интерпритатором php к примеру, шаблонизатором, и хорошо если вы быстро и круто на локалке протестите в одно лицо, а если на сайт зайдут тысячи пользователей? Хоп-хоп, да и пойдут тормоза. Так-что экономия места не только в трафике исчисляется. Кстати, а сам факт что блог на двиах, не удручает?)

    • 19 Авг 2009 из 17:14 | #5

      Jonic Нет конечно же)) я же не говорю что меня бесят дивы, я просто склонен верстать на таблах, но чувствую скоро переходить буду на дивы )))))

  5. Jonic
    19 Авг 2009 из 18:22 | #6

    Это радует :) Сам долго на таблицах сидел :)

  1. Трекбеков пока нет.