menu-core.css
242 lines
| 4.9 KiB
| text/css
|
CssLexer
r547 | /* | |||
r1073 | Copyright (c) 2010, Yahoo! Inc. All rights reserved. | |||
r547 | Code licensed under the BSD License: | |||
r1073 | http://developer.yahoo.com/yui/license.html | |||
version: 2.8.2r1 | ||||
r547 | */ | |||
/* Menu & MenuBar styles */ | ||||
.yuimenu { | ||||
top: -999em; | ||||
left: -999em; | ||||
} | ||||
.yuimenubar { | ||||
position: static; | ||||
} | ||||
.yuimenu .yuimenu, | ||||
.yuimenubar .yuimenu { | ||||
position: absolute; | ||||
} | ||||
.yuimenubar li, | ||||
.yuimenu li { | ||||
list-style-type: none; | ||||
} | ||||
.yuimenubar ul, | ||||
.yuimenu ul, | ||||
.yuimenubar li, | ||||
.yuimenu li, | ||||
.yuimenu h6, | ||||
.yuimenubar h6 { | ||||
margin: 0; | ||||
padding: 0; | ||||
} | ||||
.yuimenuitemlabel, | ||||
.yuimenubaritemlabel { | ||||
text-align: left; | ||||
white-space: nowrap; | ||||
} | ||||
/* | ||||
The following style rule trigger the "hasLayout" property in | ||||
IE (http://msdn2.microsoft.com/en-us/library/ms533776.aspx) for a | ||||
MenuBar instance's <ul> element, allowing both to clear their floated | ||||
child <li> elements. | ||||
*/ | ||||
.yuimenubar ul { | ||||
*zoom: 1; | ||||
} | ||||
/* | ||||
Remove the "hasLayout" trigger for submenus of MenuBar instances as it | ||||
is unnecessary. | ||||
*/ | ||||
.yuimenubar .yuimenu ul { | ||||
*zoom: normal; | ||||
} | ||||
/* | ||||
The following style rule allows a MenuBar instance's <ul> element to clear | ||||
its floated <li> elements in Firefox, Safari and and Opera. | ||||
*/ | ||||
.yuimenubar>.bd>ul:after { | ||||
content: "."; | ||||
display: block; | ||||
clear: both; | ||||
visibility: hidden; | ||||
height: 0; | ||||
line-height: 0; | ||||
} | ||||
.yuimenubaritem { | ||||
float: left; | ||||
} | ||||
.yuimenubaritemlabel, | ||||
.yuimenuitemlabel { | ||||
display: block; | ||||
} | ||||
.yuimenuitemlabel .helptext { | ||||
font-style: normal; | ||||
display: block; | ||||
/* | ||||
The value for the left margin controls how much the help text is | ||||
offset from the text of the menu item. This value will need to | ||||
be customized depending on the longest text label of a menu item. | ||||
*/ | ||||
margin: -1em 0 0 10em; | ||||
} | ||||
/* | ||||
PLEASE NOTE: The <div> element used for a menu's shadow is appended | ||||
to its root element via JavaScript once it has been rendered. The | ||||
code that creates the shadow lives in the menu's public "onRender" | ||||
event handler that is a prototype method of YAHOO.widget.Menu. | ||||
Implementers wishing to remove a menu's shadow or add any other markup | ||||
required for a given skin for menu should override the "onRender" method. | ||||
*/ | ||||
.yui-menu-shadow { | ||||
position: absolute; | ||||
visibility: hidden; | ||||
z-index: -1; | ||||
} | ||||
.yui-menu-shadow-visible { | ||||
top: 2px; | ||||
right: -3px; | ||||
left: -3px; | ||||
bottom: -3px; | ||||
visibility: visible; | ||||
} | ||||
/* | ||||
There are two known issues with YAHOO.widget.Overlay (the superclass class of | ||||
Menu) that manifest in Gecko-based browsers on Mac OS X: | ||||
1) Elements with scrollbars will poke through Overlay instances floating | ||||
above them. | ||||
2) An Overlay's scrollbars and the scrollbars of its child nodes remain | ||||
visible when the Overlay is hidden. | ||||
To fix these bugs in Menu (a subclass of YAHOO.widget.Overlay): | ||||
1) The "overflow" property of a Menu instance's shadow element and child | ||||
nodes is toggled between "hidden" and "auto" (through the application | ||||
and removal of the "hide-scrollbars" and "show-scrollbars" CSS classes) | ||||
as its "visibility" configuration property is toggled between | ||||
"false" and "true." | ||||
2) The "display" property of <select> elements that are child nodes of the | ||||
Menu instance's root element is set to "none" when it is hidden. | ||||
PLEASE NOTE: | ||||
1) The "hide-scrollbars" and "show-scrollbars" CSS classes classes are | ||||
applied only for Gecko on Mac OS X and are added/removed to/from the | ||||
Overlay's root HTML element (DIV) via the "hideMacGeckoScrollbars" and | ||||
"showMacGeckoScrollbars" methods of YAHOO.widget.Overlay. | ||||
2) There may be instances where the CSS for a web page or application | ||||
contains style rules whose specificity override the rules implemented by | ||||
the Menu CSS files to fix this bug. In such cases, is necessary to | ||||
leverage the provided "hide-scrollbars" and "show-scrollbars" classes to | ||||
write custom style rules to guard against this bug. | ||||
** For more information on this issue, see: | ||||
+ https://bugzilla.mozilla.org/show_bug.cgi?id=187435 | ||||
+ YUILibrary bug #1723530 | ||||
*/ | ||||
.hide-scrollbars * { | ||||
overflow: hidden; | ||||
} | ||||
.hide-scrollbars select { | ||||
display: none; | ||||
} | ||||
/* | ||||
The following style rule (".yuimenu.show-scrollbars") overrides the | ||||
".show-scrollbars" rule defined in container-core.css which sets the | ||||
"overflow" property of a YAHOO.widget.Overlay instance's root HTML element to | ||||
"auto" when it is visible. Without this override, a Menu would have scrollbars | ||||
when one of its submenus is visible. | ||||
*/ | ||||
.yuimenu.show-scrollbars, | ||||
.yuimenubar.show-scrollbars { | ||||
overflow: visible; | ||||
} | ||||
.yuimenu.hide-scrollbars .yui-menu-shadow, | ||||
.yuimenubar.hide-scrollbars .yui-menu-shadow { | ||||
overflow: hidden; | ||||
} | ||||
.yuimenu.show-scrollbars .yui-menu-shadow, | ||||
.yuimenubar.show-scrollbars .yui-menu-shadow { | ||||
overflow: auto; | ||||
} | ||||
.yui-overlay.yui-force-redraw { | ||||
margin-bottom: 1px; | ||||
} | ||||