Forum Moderators: not2easy

Message Too Old, No Replies

ADxMenu Issue

         

rahfiki

2:45 am on Apr 20, 2009 (gmt 0)

10+ Year Member



I am implementing ADxMenu.

I need the menu to have a 30px left padding so the the menu aligns with my site's logo but when I add "padding: 0 0 0 30px", the menu extends beyond the body width on the left and right side. It may be that I am not changing the rest of the code to accommodate the initial change. Can someone help?

picture of the problem:
<snip>

Here is my code:

body {
margin-top: 20px;
padding: 0;
background: #ebebeb;
text-align: justify;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
color: #000000;
}

#header {
width: 1026px;
margin: 0 auto;
height: 152px;
background: url(images/img01.png) no-repeat left top;
}

//ADxMenu code
.menu, .menu ul {
margin: 0 auto;
padding: 0 0 0 30px; <-- this is where I made the change, it was originally "0"
width: 1026px;
border: 0;
list-style-type: none;
display: block;
}

.menu li {
margin: 0;
padding: 0;
border: 0;
display: block;
float: left;/* move all main list items into one row, by floating them */
position: relative;/* position each LI, thus creating potential IE.win overlap problem */
z-index: 5;/* thus we need to apply explicit z-index here... */
}

.menu li:hover {
z-index: 10000;/* ...and here. this makes sure active item is always above anything else in the menu */
white-space: normal;/* required to resolve IE7 :hover bug (z-index above is ignored if this is not present)
see <snip> for other stuff that work */
}

.menu li li {
float: none;/* items of the nested menus are kept on separate lines */
}

.menu ul {
visibility: hidden;/* initially hide all submenus. */
position: absolute;
z-index: 10;
left: 0;/* while hidden, always keep them at the top left corner, */
top: 0;/* to avoid scrollbars as much as possible */
}

.menu li:hover>ul {
visibility: visible;/* display submenu them on hover */
top: 100%;/* 1st level go below their parent item */
}

.menu li li:hover>ul {/* 2nd+ levels go on the right side of the parent item */
top: 0;
left: 100%;
}

/* -- float.clear --
force containment of floated LIs inside of UL */
.menu:after, .menu ul:after {
content: ".";
height: 0;
display: block;
visibility: hidden;
overflow: hidden;
clear: both;
}
.menu, .menu ul {/* IE7 float clear: */
min-height: 0;
}
/* -- float.clear.END -- */

/* -- sticky.submenu --
it should not disappear when your mouse moves a bit outside the submenu
YOU SHOULD NOT STYLE the background of the ".menu UL" or this feature may not work properly!
if you do it, make sure you 110% know what you do */
.menu ul {
background-image: url(empty.gif);/* required for sticky to work in IE6 and IE7 - due to their (different) hover bugs */
padding: 10px 30px 30px 30px;
margin: -10px 0 0 -30px;
/*background: #f00;*//* uncomment this if you want to see the "safe" area.
you can also use to adjust the safe area to your requirement */
}
.menu ul ul {
padding: 30px 30px 30px 10px;
margin: -30px 0 0 -10px;
}

[edited by: swa66 at 3:46 am (utc) on April 21, 2009]
[edit reason] No URLs please see ToS and forum charter [/edit]

holyhttp

4:25 am on Apr 23, 2009 (gmt 0)

10+ Year Member



I would advise you decrease the width of that menu by 30px an give it a left margin of 30px instead. IE will add the padding to the width and that's not what you want.

DrDoc

4:51 am on Apr 23, 2009 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Well, IE 6 and up (in standard compliant mode) does not have that problem. But older versions do.

rahfiki

11:34 pm on Apr 29, 2009 (gmt 0)

10+ Year Member




System: The following message was spliced on to this thread from: http://www.webmasterworld.com/css/3903653.htm [webmasterworld.com] by swa66 - 11:40 pm on April 29, 2009 (utc 0)


I have several UL's on my site...

The problem I am having is extra white space between words in my lists. It seems to happen when the sentence takes up more than 2 lines.

SEE PHOTO OF PROBLEM HERE: <snip>
"Certified Facility Manager" has extra white space between the words.

This happens in my #main as well. Which leads me to believe I may be missing a line of code in my body or allcontent divs.

If any one can give me some solution ideas, I would greatly appreciate it!

CODE:
body {
padding: 0;
background-color: #ebebeb;
text-align: justify;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
color: black;
}

#header {
height: 152px;
background: url(images/img01.png) no-repeat left top;
}

#allcontent {
padding-top: 0px;
width: 1026px;
padding-bottom: 10px;
background-color: #ffffff;
margin-left: auto;
margin-right: auto;
}

CODE FOR THE MENU:
.menu, .menu ul {
margin: 0 auto 0px 0;
padding-left: 10px;
height: 35px;
border: 0;
list-style-type: none;
display: block;
}

.menu li {
margin: 0;
padding: 0 0 0 0px;
border: 0;
display: block;
float: left;/* move all main list items into one row, by floating them */
position: relative;/* position each LI, thus creating potential IE.win overlap problem */
z-index: 5;/* thus we need to apply explicit z-index here... */
}

.menu li:hover {
z-index: 10000;/* ...and here. this makes sure active item is always above anything else in the menu */
white-space: normal;/* required to resolve IE7 :hover bug (z-index above is ignored if this is not present)
see [tanfa.co.uk...] for other stuff that work */
}

.menu li li {
float: none;/* items of the nested menus are kept on separate lines */
}

.menu ul {
visibility: hidden;/* initially hide all submenus. */
position: absolute;
z-index: 10;
left: 0;/* while hidden, always keep them at the top left corner, */
top: 0;/* to avoid scrollbars as much as possible */
}

.menu li:hover>ul {
visibility: visible;/* display submenu them on hover */
top: 100%;/* 1st level go below their parent item */
}

.menu li li:hover>ul {/* 2nd+ levels go on the right side of the parent item */
top: 0;
left: 100%;
}

/* -- float.clear --
force containment of floated LIs inside of UL */
.menu:after, .menu ul:after {
content: ".";
height: 0;
display: block;
visibility: hidden;
overflow: hidden;
clear: both;
}
.menu, .menu ul {/* IE7 float clear: */
min-height: 0;
}
/* -- float.clear.END -- */

/* -- sticky.submenu --
it should not disappear when your mouse moves a bit outside the submenu
YOU SHOULD NOT STYLE the background of the ".menu UL" or this feature may not work properly!
if you do it, make sure you 110% know what you do */
.menu ul {
background-image: url(empty.gif);/* required for sticky to work in IE6 and IE7 - due to their (different) hover bugs */
padding: 10px 30px 30px 30px;
margin: -10px 0 0 -30px;
/*background: #f00;*//* uncomment this if you want to see the "safe" area.
you can also use to adjust the safe area to your requirement */
}
.menu ul ul {
padding: 30px 30px 30px 10px;
margin: -30px 0 0 -10px;
}
/* -- sticky.submenu.END -- */

/* - - - ADxMenu: DESIGN styles [ OPTIONAL, design your heart out :) ] - - - */

.menu, .menu ul li {
color: #000000;
background: #fff;
}

.menu ul {
width: 11em;
}

.menu a {
text-decoration: none;
color: #000000;
padding: .4em 1em;
display: block;
position: relative;

}

.menu a:hover, .menu li:hover>a {
color: #003366;

}

.menu li li {/* create borders around each item */
border: 1px solid #ccc;
}
.menu ul>li + li {/* and remove the top border on all but first item in the list */
border-top: 0;
}

.menu li li:hover>ul {/* inset 2nd+ submenus, to show off overlapping */
top: 5px;
left: 90%;
}

[edited by: swa66 at 11:36 pm (utc) on April 29, 2009]
[edit reason] No personal URLs pleas esee ToS and forum charter [/edit]