HTML CSS шпаргалка Рецепты, статьи, советы, приемы html css

Верстка меню с разделителями

Пусть нам нужно сделать меню с разделителями между пунктами. Пусть, например, это будет горизонтальное меню с разделителем в виде вертикальной линии:

меню с разделителем

Задача такая. Как максимально просто сделать, чтобы разделитель был перед всеми пунктами кроме первого.

А делается это так. Берем обычное меню в виде списка ul li. Ставим разделитель, в данном случае левый бордер каждой li. Внешнему ul задаем overflow:hidden и смещаем все li влево, чтобы скрылся разделитель на первом пункте меню. Вот и все. Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Меню с разделителями</title>
<style type="text/css">
#menu{
	list-style:none;
	padding:0;
	margin:0 auto;
	width:500px;
	overflow:hidden;
	position:relative;
	z-index:1;
}
#menu li{
	float:left;
	padding:0 20px;
	margin:0;
	border-left:1px solid #000;
	position:relative;
	z-index:1;
	left:-21px;
}
</style>
</head>
<body>
<ul id="menu">
	<li><a href="#">Главная</a></li>
	<li><a href="#">О компании</a></li>
	<li><a href="#">Услуги</a></li>
	<li><a href="#">Контакты</a></li>
</ul>
</body>
</html>

Position:relative на ul необходим, т.к. ие6 не хочет просто так, даже при наличии overflow:hidden скрывать 1й разделитель.

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

Метки: ,


Fatal error: Call to undefined function wp_related_posts() in /home/k/kazanets/htmlcssinfo/public_html/wp-content/themes/htmlcsstheme/single.php on line 70