Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > HTML и CSS
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2011, 16:34   #1
RAVAL(c)
Пользователь
 
Регистрация: 05.09.2010
Сообщений: 31
Вопрос боковое меню

Здравствуйте.
Скажите пожалуйста, как сделать вертикальное меню с выпадающим влево подменю.
RAVAL(c) вне форума Ответить с цитированием
Старый 02.02.2011, 16:36   #2
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Легко. Вот смотрите - это вправо:
Код:
/* MENU STYLE */

ul.UL_Menu
{
 margin              : 0; 
 padding             : 0; 
 list-style          : none;
 text-align          : left;
 width               : 140px;
 border-bottom       : 1px;
 border-bottom-style : solid;
 border-bottom-color : #505050; 
}

ul.UL_Submenu
{
 position            : absolute;
 list-style          : none; 
 left                : 139px;
 width               : 140px; 
 top                 : 0; 
 display             : none;
 margin              : 0; 
 padding             : 0;
 border-bottom       : 1px;
 border-bottom-style : solid;
 border-bottom-color : #505050; 
}

li.LI_Menu
{
 position   : relative; 
}

li.LI_Menu a.A_Menu
{
 display             : block;
 height              : 15px;
 text-decoration     : none;
 font-family         : sans-serif;
 font-size           : 10px; 
 color               : #404040; 
 background-color    : #B0B0B0; 
 padding             : 5px;
 border              : 1px;
 border-style        : solid;
 border-color        : #505050;
 border-bottom       : 0; 
}

li.LI_Submenu a.A_Submenu
{
 display             : block;
 height              : 15px;
 text-decoration     : none;
 font-family         : sans-serif;
 font-size           : 10px; 
 color               : #404040; 
 background-color    : #B0B0B0; 
 padding             : 5px;
 border              : 1px;
 border-style        : solid;
 border-color        : #505050;
 border-bottom       : 0;
}

li.LI_Menu:hover a.A_Menu
{
 background          : #A0A0A0;
}

li.LI_Submenu:hover a.A_Submenu
{
 background          : #A0A0A0;
}

li.LI_Menu:hover ul.UL_Submenu
{
 display : block;
}

#A_Triangle
{
 background-image    : url('/res/int/tr.gif');
 background-position : center right;
 background-repeat   : no-repeat;
}

p.P_Navigation
{
 display             : block;
 width               : 120px;
 height              : 15px;
 font-family         : sans-serif;
 font-size           : 10px; 
 padding             : 5px;
 color               : #404040; 
 background-color    : #B0B0B0; 
 border              : 1px;
 border-style        : solid;
 border-color        : #505050;
}
А это влево:
Код:
...
ul.UL_Submenu
{
 position            : absolute;
 list-style          : none; 
 left                : -139px;
 width               : 140px; 
 top                 : 0; 
 display             : none;
 margin              : 0; 
 padding             : 0;
 border-bottom       : 1px;
 border-bottom-style : solid;
 border-bottom-color : #505050; 
}

...
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 02.02.2011, 19:39   #3
RAVAL(c)
Пользователь
 
Регистрация: 05.09.2010
Сообщений: 31
Вопрос

а для этого?

css:
Код:
.sidebarmenu ul{
margin: 0;
padding: 0;
list-style-type: none;
font: bold 13px Verdana;
width: 150px; /*Ширина меню */
border-bottom: 1px solid #ccc;
}
 
.sidebarmenu ul li{
position: relative;
}
/* Стили ссылок для основного списка меню */
.sidebarmenu ul li a{
display: block;
overflow: auto; /*force hasLayout in IE7 */
color: white;  /*цвет шрифта*/
text-decoration: none;  /*убрали подчеркивание*/
padding: 6px; /*отступы*/
border-bottom: 1px solid #778;
border-right: 1px solid #778;
}

.sidebarmenu ul li a:link, .sidebarmenu ul li a:visited,
 .sidebarmenu ul li a:active{
background-color: #012D58; /*фоновый цвет основного списка*/
}

.sidebarmenu ul li a:visited{
color: white; /*цвет шрифта после наведения курсора*/ 
}

.sidebarmenu ul li a:hover{
background-color: black; /*цвет фона после наведения курсора*/
}
/*Стили для подменю */
.sidebarmenu ul li ul{
position: absolute;
width: 170px; /*ширина подменю */
top: 0;
visibility: hidden;
}

.sidebarmenu a.subfolderstyle{
background:url(right.gif) no-repeat 97% 50%;/*изображение(стрелочка вправо)*/
}

/* Holly Hack for IE \*/
* html .sidebarmenu ul li { float: left; height: 1%; }
* html .sidebarmenu ul li a { height: 1%; }
/* End */


javascript:
Код:
var menuids=["sidebarmenu1"] 
//Enter id(s) of each Side Bar Menu's main UL, separated by commas

function initsidebarmenu(){
for (var i=0; i<menuids.length; i++){
var
ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
    for (var t=0; t<ultags.length; t++){
ultags[t].parentNode.getElementsByTagName
("a")[0].className+=" subfolderstyle"
if (ultags[t].parentNode.parentNode.id==menuids[i]) 
//if this is a first level submenu
ultags[t].style.left=ultags[t].parentNode.offsetWidth+"px"
 //dynamically position first level submenus to be width of main menu item
  else //else if this is a sub level submenu (ul)
ultags[t].style.left=ultags[t-1].getElementsByTagName
("a")[0].offsetWidth+"px" 
//position menu to the right of menu item that activated it
    ultags[t].parentNode.onmouseover=function(){
    this.getElementsByTagName("ul")[0].style.display="block"
    }
    ultags[t].parentNode.onmouseout=function(){
    this.getElementsByTagName("ul")[0].style.display="none"
    }
    }
  for (var t=ultags.length-1; t>-1; t--){ 
//loop through all sub menus again, and use "display:none" 
//to hide menus (to prevent possible page scrollbars)
  ultags[t].style.visibility="visible"
  ultags[t].style.display="none"
  }
  }
}

if (window.addEventListener)
window.addEventListener("load", initsidebarmenu, false)
else if (window.attachEvent)
window.attachEvent("onload", initsidebarmenu)
RAVAL(c) вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
меню как на сайте p&g (меню ввиде таблицы) ilma55 WordPress и другие CMS 0 19.09.2010 19:09
Боковое меню как вконтакте. Winlook HTML и CSS 6 20.07.2010 22:37
И сново sendMessage =) Как нажать пункт верхнего меню и меню правой кнопки? TwiX Win Api 9 15.10.2009 01:57
Для доступа к пунктам главного меню клавиши ALT + подчеркнутая буква меню в офис 2007? Окоча Юра Microsoft Office Word 1 24.02.2009 12:29
Меню с Items в виде набора Bitmap (как меню редактирования в Word'е) chandrasecar Мультимедиа в Delphi 7 14.01.2009 09:20