Поиск по блогу

Showing posts with label css. Show all posts
Showing posts with label css. Show all posts

Sunday, April 6, 2014

Верстка вложенного вертикального меню

 Как правило меню такого типа делают с помощью вложенных друг в друга маркированных списков, устанавливая элементам списка различные значения фона в зависимоти от того, какой пункт меню в данный момент активен. Единственное, что при этом нужно учитывать - высота актианого пункта меню верхнего уровня растягивается на высоту отображаемых вложенных пунктов. Впрочем это легко решается добавлением дескриптроа "top" к свойству background.
Попробуем сверстать вот такое меню:
Для верстики заголовка и низа меню воспользуемся методом, который я уже описывал ранее.   Границы меню и его пунктов сделаем с помощью border.
Изображения, которые нам понадобятся:
  • - Картинки для верстки заголовка меню;
  • - Картинки для верстки подвала меню;
  • - Картинки маркеров пунктов меню;
HTML-код в итоге получится такой:
<html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
 <div class="menu-module">
  <!-- Заголовок меню -->
  <img alt="" src="images/lbar.png" class="lbar top_bar">
  <img alt="" src="images/rbar.png" class="rbar top_bar">
  <h3 class="mbar menu-header">Навигация</h3>
  <!-- Список пунктов меню -->
  <ul class="nav menu">
   <li class="item"><a href="#">Главная</a></li>
   <li class="item active deeper parent">
    <a href="#">DataLife Engine</a>
    <ul class="nav-child unstyled small">
     <li class="item"><a href="#">Хаки</a></li>
     <li class="item"><a href="#">Модули</a></li>
     <li class="item current active"><a href="#">Релизы</a></li>
     <li class="item"><a href="#">Баги/Фиксы</a></li>
    </ul></li>
   <li class="item parent"><a href="#">Invision Power Board</a></li>
   <li class="item parent"><a href="#">vBulletin</a></li>
   <li class="item parent"><a href="#">phpBB</a></li>
  </ul>
  <!-- Подвал меню -->
  <img alt="" src="images/bottom_left_menu_bar.png" class="lbar bottom_bar">
  <img alt="" src="images/bottom_right_menu_bar.png" class="rbar bottom_bar">
  <div class="mbar menu_bottom"></div>
 </div>
</body>
</html> 
Поскольку нижняя граница последнего пункта меню у нас задается в подвале, то при написании CSS-стилей для остальных пунктов будем отображать только верхнюю границу. Также необходимо учесть, что верхняя граница не нужна под активным пунктом меню верхнего уровня, для этого используем стиль ".menu-module .menu li:FIRST-CHILD". В итоге CSS-стили получатся следующие:
/* --- Общие настройки обтекания блоков ---*/
.lbar {
 display: block; float: left;
}
.rbar {
 display: block; float: right;
}
.mbar {
 margin-top: 0px; margin-bottom: 0px;
}
.clr {
 clear:both;
}
/* --- Заголовок меню --- */
.menu-module {
 max-width: 300px;
 margin: 100px;
}
.menu-module .top_bar {
 width: 8px; height: 34px;
}
.menu-header {
 height: 34px;
 background: url('../images/mbar.png');
 margin: 0px 8px; padding-left: 20px;
 font-size: 12px; color: #fff; line-height: 34px;
}
/* --- Пункты меню --- */
.menu-module ul {
 list-style: none;
}
.menu-module .menu {
 border-top: 1px solid #ccc; border-left: 1px solid #ccc; border-right: 1px solid #ccc;
}
.menu-module .menu li {
 border-top: 1px solid #ccc;
}
.menu-module .menu li:FIRST-CHILD {
 border-top: none;
}
.menu-module .menu a {
 height: 25px; margin-left: 10px; padding-left: 10px;
 display: block;
 background: url('../images/inactivebullet.png') left no-repeat;
 line-height: 25px;
}
.menu-module .menu .active {
 background: url('../images/active_background.png') top repeat-x;
}
.menu-module .menu .active a {
 margin-left: 30px; padding-left: 10px;
 background: url('../images/activebullet.png') left no-repeat;
 color: #fff;
}
.menu-module .menu ul .active {
 background: none;
}
.menu-module .menu ul a {
 background: none !important;
 color: #000 !important;
}
.menu-module .menu ul li.current a {
 background: url('../images/currentbullet.png') left no-repeat !important;
}
/* --- Подвал меню --- */
.menu-module .bottom_bar {
 width: 11px; height: 11px;
}
.menu_bottom {
 height: 11px;
 background: url('../images/bottom_medium_menu_bar.png');
 margin: 0px 11px;
}

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

Sunday, March 23, 2014

Верстка заголовков текстовых блоков

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

В заголовке мы видим скругленные углы и градиентный фон. Разделим картинку заголовка на три части,
 
 которые будут соответственно левой стороной, фоном и правой стороной заголовка. Наш HTML-код будет выглядеть следующим образом:
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="./style.css">
</head>
<body>
 <div class="menu">
  <img alt="" src="lbar.png" class="lbar">
  <img alt="" src="rbar.png" class="rbar">
  <div class="mbar">Навигация</div>
  <div class="clr"></div>
 </div>
</body>
</html>
Блок menu будет задавать ширину нашего меню, картинки lbar.png и rbar.png являются краями заголовка блок mbar содержит надпись.
В стилях CSS мы сначала зададим общие настройки для всех подобных текстовых блоков:
.lbar {
 display: block; float: left;
}
.rbar {
 display: block; float: right;
}
.mbar {
 margin-top: 0px; margin-bottom: 0px;
}
.clr {
 clear:both;
}
Теперь зададим стили для нашего заголовка меню
.menu {
 width: 220px;
}
.menu .lbar, .menu .rbar {
 width: 8px; height: 34px;
}
.menu .mbar {
 height: 34px;
 background: url('mbar.jpg');
 margin: 0px 8px; padding-left: 20px;
 font-size: 12px; color: #fff; line-height: 34px;
}
Главным здесь является свойство margin: 0px 8px, с помощью которого мы освобождаем место слева и справа от заголовка для закругленных картинок.
Новые домены .САЙТ, .ОНЛАЙН, .BIKE, .COMPUTER и множество других уже доступны для заказа. Успей занять красивый домен  Подробнее...
 
Google+