Верстка table против div
В последнее время вебмастера все больше уделяют внимание блочной верстке (div), отходя от более распространенной табличной верстки (table). В сети можно найти массу споров по этому поводу и статей о преимуществе того или иного вида верстки. Давайте рассмотрим преимущества и недостатки этих двух способов.
Табличная верстка
Безусловно удобный способ написания кода с встроенными практически во все WYSIWYG-редакторы инструментами создания нужных таблиц. Возможность задавать строгие размеры в пикселях или процентном соотношении как всей таблице, так и каждой отдельной ячейке, благодаря чему можно сверстать растягивающийся под разрешение монитора (резиновый) дизайн. Возможность добиться одинакового отображения сайта в разных браузерах. Простота написания кода и широкие возможности для дизайна с использованием вложенности таблиц.
На этом перечисление достоинств табличной верстке заканчивается, по крайней мере я в силу своих познаний в верстке затрудняюсь что либо добавить.
Блочная верстка
Основное приемущество в плане отображения - слои, это то, чего нельзя добиться табличной версткой. Практически все остальные приемы табличной верстки можно реализовать и блочной версткой. Для меня было большим минусом написание кода блочной верстки чтобы в браузере отображалось именно так, как было задумано, постоянно возникали сложности со стилями (CSS). Код страницы с блочной версткой не страдает избыточностью кода, иными словами количество тегов в коде резко сокращается, что ведет к общему уменьшению размера файлов и простоте доступа поисковых индексаторов к основному контенту страниц. Кроме того, в отличии от табличной верстки появляется возможность расположить более значимый контент, который по дизайну может быть внизу страницы, например после навигации по сайту, ближе к началу страницы. Используя блочную верстку можно оставить на странице для лучшей индексации ботами только текстовый контент, спрятав все картинки в стили CSS.
DIV против TABLE
С точки зрения возможности написания более оптимизированного кода страниц, несомненно выигрывает блочная верстка. Во первых дает возможность поднять выше по коду нужный ключевой контент, во вторых сильно облегчает индексацию поисковым ботам, путем резкого сокращения количества тегов разметки. На практике это естественно не даст огромного приемущества при индексации и страница сверстанная таблицами будет прекрасно проиндексирована, но страница сверстанная блоками, будет проиндексирована быстрее и лучше, т.е. хоть какоето приемущество в этом есть. И ещё один небольшой плюс в пользу блочной верстки: страница сверстанная по блочной технологии при загрузке сразу отображает содержимое блоков, при табличной верстке содержимое ячеек не будет отображаться, пока не загрузиться вся таблица.
На мой взгляд, лучше всего использовать смешанный метод верстки, с применением обоих вариантов, т.е. использовать блоки в таблицах или наоборот - таблицы в блоках, если конечно затруднительно полностью отказаться от таблиц. Возможны правда и такие задачи, с которыми таблицы справляются лучше чем блоки, например если нужно сделать прайс лист или другую таблицу с данными.
Dr @ January 7, 2008
>> Возможность добиться одинакового отображения сайта в разных браузерах.
Что же это семантическая верстка не позволяет?
>> Простота написания кода и широкие возможности для дизайна с использованием вложенности таблиц.
Это по-вашему достоинство?
>> Возможны правда и такие задачи, с которыми таблицы справляются лучше чем блоки, например если нужно сделать прайс лист или другую таблицу с данными.
Table и предназначен для верстки табличных данных, поэтому не стоят говорить о том, что этот структурный элемент лучше справляется с такой задачей.
Поясните, семантическая верстка, это куда?