HTML and CSS

HTML and CSS

{Лаборатория экстремальной web-верстки...}

Импровизация на заданную тему

Импровизация на заданную тему

В комментариях к статье "Одинаковая высота колонок – border" был поднят вопрос об индивидуальном цвете колонок отведенных под навигацию. Вернее, если я правильно понял данное замечание, это касалось только двух макетов, а именно, колонки навигации находятся рядом друг с другом и расположены слева или справа от области контента. Там же приводился линк, где нечто подобное было сделано.

Не в даваясь в подробный анализ, замечу, что реализация разноцветных колонок выполнена довольно не уклюже. Задача решалась в лоб и нет изящности присущей грамотному использованию "Каскадных таблиц стилей". Масса дополнительных контейнеров, трудности создания макетов с иным расположением колонок навигации. Судя по всему, разметка затачивалась под конкретный проект и цели достичь некой универсальности, не ставилась.

Но не будем слишком строги :)

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

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

html-код из указанной статьи без всяких изменений, хотя разговор пойдет только о двух макетах, но по традиции в заключение статьи вы сможете посмотреть все пять примеров, дополненных, так нужной кому-то эмуляцией nim/max-width для IE6 :)

Необходимые манипуляции для получения нужного результата.

Стили до :

#middle {
  margin:3px auto;
  min-width:910px;
  max-width:960px;
}
*html #middle {width:960px;}
.wrap {
  background-color:#fff;
  border-left:#eee 400px solid;
  height:100%;
}
.wrap:after {content:'';clear:both;display:block;}
.content,
.left,
.right {float:left;overflow:hidden;position:relative;}
.content {margin-right:-100%;width:100%;}
.left {margin-right:-100%;width:200px;left:-400px;}
.right {margin-right:-200px;left:-200px;width:200px;}

Стили после :

#middle {
  background-color:#ddd;
  margin:3px auto;
  min-width:910px;
  max-width:960px;
}
*html #middle {width:expression(
  (document.compatMode && document.compatMode == 'CSS1Compat') ?
  (document.documentElement.clientWidth < 910 ? "910px":
  (document.documentElement.clientWidth > 960 ?"960px" :"auto")) :
  (document.body.clientWidth < 910 ? "910px" :
  (document.body.clientWidth > 960 ? "960px" :"auto")));
}
.wrap {
  background-color:#fff;
  border-left:#eee 200px solid;
  margin-left:200px;
  height:100%;
}
.wrap:after {content:'';clear:both;display:block;}
.content,
.left,
.right {float:left;overflow:hidden;position:relative;}
.content,.left {margin-right:-100%;}
.content {width:100%;}
.left {left:-400px;width:200px;}
.right {left:-200px;width:200px;}

Нововведения выделены цветом.

Появилось всего несколько новых стилевых правил, но этого оказалось вполне достаточно.

Для #middle указан background-color:#ddd; это и будет цвет одной из колонок.

Для .wrap вместо прежней ширины border-а в 400px, произошла разбивка на две равные части этого значения: border-left:#eee 200px solid; и margin-left:200px; и теперь другая колонка будет цветом #eee.

Вот так все достаточно легко и просто и самое главное это никоим образом не затрагивает html-код страницы, что само по себе уже приятно.

Продолжая импровизировать, получаем возможность задать одной из колонок навигации фоновую графику размножающуюся по вертикали.

Как это сделать читаем предыдущий пост: "Super Holy Grail Gordi".

Вот только вертикальный border отделяющий область контента от колонок навигации нарисовать не судьба. Минус особенностей разметки :)

Переходим к примерам.


RSS лента ВСЕГО блога с комментариями RSS лента ВСЕГО блога БЕЗ комментариев RSS лента этой КАТЕГОРИИ с комментариями RSS лента этой КАТЕГОРИИ и БЕЗ комментариев RSS лента ЭТОГО ПОСТА с комментариями к нему



Прыг: 43 44 45 46 47 48 49 50 51 52 53
Скок: 10 20 30 40 50 60 70 80 90
English German French Spanish Italian Japanese
  • Programming V. Lasto
  • Designer S. Gordi
  • Created in 0,02824 seconds
  • © 2007-2010