Библиотека Интернет Индустрии I2R.ru |
|||
|
Основы web-дизайна. Таблицы. Табличная вёрстка.
Табличная вёрстка.Таблицы, которые первоначально проектировались как средство представления двумерных массивов данных, сейчас используются в основном как инструмент для точного позиционирования контента на веб-странице. Стандарт HTML не предусматривает возможности расположить картинки и текст относительно друг друга с приемлемой точностью, а табличная вёрстка, при которой различные части контента помещаются в разные ячейки таблиц, способна решить эту проблему. Кроме того, табличная вёрстка очень полезна при проектировании сайтов с большим количеством графических элементов: в больших рисунках почти всегда можно выделить области, закрашенные одним и тем же цветом, которые можно выбросить, заменив на пустые ячейки с соответствующим фоном и сэкономив таким образом на общем «весе» графики и времени загрузки страниц. Это, конечно же, не единственное преимущество упомянутого способа вёрстки. К недостатками же его можно отнести тот факт, что некоторые браузеры (не будем показывать пальцем) не в состоянии отобразить на экране уже загруженные части помещённого в таблицу контента до тех пор, пока не загрузится вся таблица целиком. Они же (упомянутые браузеры) почему-то очень медленно работают со вложенными таблицами. А потому скажем дружно, что Нетскейп есть не что иное как дрянь, мерзость и порождение Сатаны. Несогласных попрошу удалиться. Чтобы понять, как именно нужно «нарезать» контент для помещения в таблицы и как проектируются сами таблицы, достаточно просмотреть исходный код нескольких профессионально сделанных сайтов и попробовать сделать что-то подобное самостоятельно, поэтому я не стану подробно разбирать эту тему. Остановлюсь лишь на двух наиболее распространённых техниках оформления таблиц, позволяющих справиться с недостатками стандартного HTML и проблемами, возникающими при обеспечении совместимости с различными браузерами. Применение фоновых рисунковИногда дизайнер испытывает непреодолимое желание использовать в качестве фона таблицы некий рисунок. Не будем сейчас говорить о том, хорошо это или плохо. Ему так захотелось. И вот картинка подготовлена, оптимизирована и прописана в параметре Проблема заключается в том, при просмотре страницы в разных браузерах ячейки по-разному наследуют фон таблицы. Internet Explorer рассматривает каждый контейнер Для того, чтобы справиться с этой проблемой, приходится использовать вложенные таблицы. Во внешней прописывается адрес фоновой картинки, а во внутренней в качестве фона указывается пустой URL: <table background="backgroundpicture.gif" width="500" Пустой атрибут
Создание таблиц с бордюром в 1 пикселСоздадим простейшую таблицу с бордюром в один пиксел, содержащую всего одну ячейку. Вот код: <table width="200" border="1" cellspacing="0" А вот результат: Видно, что толщина бордюра почему-то равно двум пикселам. К сожалению, более-менее приличного способа борьбы с этой глупостью пока не придумали, а потому приходится делать всё по-дурацки. Но -- работать будет. Вот таблица с бордюром толщиной в один пиксел:
А вот её код: <table width=200 border=0 cellpadding=1 Как вы можете заметить, задача опять решается при помощи вложенных таблиц. В данном случае для внешней таблицы задан чёрный фон и параметр Всякие разностиВ завершение разговора о таблицах сформулирую несколько правил, которых стоит придерживаться во время разработки дизайна, основанного на табличной вёрстке. 1. Указывайте ВСЕ размеры таблиц и составляющих их ячеек.
2. По возможности указывайте все размеры в пикселах, а не в процентах Если вы используете «резиновый» дизайн, от этого правила иногда можно отступать, и то только в тех случаях, когда вы задаёте, скажем, ширину колонок, которые в сумме должны занимать весь экран. Помните, что при масштабировании документа или даже при обычном изменении окна браузера ваши проценты могут принять самые неожиданные значения, и дизайн развалится. 3. Используйте распорки. Наш любимые Нетскейп никогда не упускает возможности пошутить. Если дизайнер создаёт ячейку таблицы, даже задаёт её размеры, но не помещает туда контент (либо контент не занимает всю ячейку), Нетскейп считает себя вправе поступать с размерами ячейки как заблагорассудится, а иногда и вовсе «схлопывает» её. Чтобы избежать этой беды, создайте прозрачную картинку формата 4. Указывайте нулевую толщину бордюра для всех картинок в таблице. Если на какой-то из картинок появится ссылка, а параметр 6. Разрывайте теги. Если поставить рядом две картинки и написать тег А всё потому, что мы сделали вот так: <img src="../second.img/bred.gif" width="20" height=20> Теперь попробуем разорвать один из тегов: <img src="../second.img/bred.gif" width="20" height=20><img В результате получаем совсем другую картину: А всё потому, что браузер воспринимает перенос строки и пробел одинаково: для него это whitespace, в простейшем случае -- пробел. Вот он и ставит пробел между двумя картинками. При использовании табличной вёрстки крохотная ошибка в коде -- перенос строки, стоящий вроде бы именно там, где ему полагается быть -- может заставить «поехать» всю композицию. Имейте в виду. ;-)
|
|
2000-2008 г. Все авторские права соблюдены. |
|