Thứ Năm, 13 tháng 9, 2007

Soure CSS menu

.foo {} /* W3C CSS validator likes CSS files to start with a class rather than a comment. Soooooo.... */
/* This style sheet is intended to contain OFTEN CHANGED rules used when the Menu control adapter is enabled. */
/* When the Menu control's Orientation property is Vertical the adapter wraps the menu with DIV */
/* whose class is AspNet-Menu-Vertical. */
/* Note that the example menu in this web site uses relative positioning to force the menu to occupy */
/* a specific place in the web page. Your web site will likely use a different technique to position your */
/* menu. So feel free to change all the properties found in this CSS rule if you clone this style sheet. */
/* There is nothing, per se, that is magical about these particular property value choices. They happen to */
/* work well for the sample page used to demonstrate an adapted menu. */
.PrettyMenu .AspNet-Menu-Vertical
{
position:relative;
top: 3em;
left: 0;
z-index: 300;
}
/* The menu adapter renders an unordered list (ul) in HTML for each tier in the menu. */
/* So, effectively says: style all tiers in the menu this way... */
.PrettyMenu ul
{
background:#7795BD;
}
/* Top tier */
.PrettyMenu .AspNet-Menu-Vertical ul.AspNet-Menu
{
width: 9em;
}
/* This rule effectively says: style all tiers EXCEPT THE TOP TIER in the menu this way... */
/* In other words, this rule can be used to style the second and third tiers of the menu without impacting */
/* the topmost tier's appearance. */
.PrettyMenu ul.AspNet-Menu ul
{
width: 10.5em;
left: 8.9em;
top: -1em;
z-index: 400;
}
.PrettyMenu ul.AspNet-Menu ul ul
{
width: 11.5em;
left: 10.4em;
}
/* The menu adapter generates a list item (li) in HTML for each menu item. */
/* Use this rule create the common appearance of each menu item. */
.PrettyMenu ul.AspNet-Menu li
{
background:#7795BD url(bg_nav.gif) repeat-x;
}
/* Within each menu item is a link or a span, depending on whether or not the MenuItem has defined it's */
/* NavigateUrl property. By setting a transparent background image here you can effectively layer two images */
/* in each menu item. One comes from the CSS rule (above) governing the li tag that each menu item has. */
/* The second image comes from this rule (below). */
.PrettyMenu ul.AspNet-Menu li a,
.PrettyMenu ul.AspNet-Menu li span
{
color: black;
padding: 4px 2px 4px 8px;
border:1px solid #648ABD;
border-bottom: 0;
background: transparent url(arrowRight.gif) right center no-repeat;
}
/* When a menu item contains no submenu items it is marked as a "leaf" and can be styled specially by this rule. */
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Leaf a,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Leaf span
{
background-image: none;
}
/* Not used presently. This is here if you modify the menu adapter so it renders img tags, too. */
.PrettyMenu ul.AspNet-Menu li a img
{
border-style: none;
vertical-align: middle;
}
/* When you hover over a menu item, this rule comes into play. */
/* Browsers that do not support the CSS hover pseudo-class, use JavaScript to dynamically change the */
/* menu item's li tag so it has the AspNet-Menu-Hover class when the cursor is over that li tag. */
/* See MenuAdapter.js (in the JavaScript folder). */
.PrettyMenu ul.AspNet-Menu li:hover,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover
{
background:#7795BD;
}
.PrettyMenu ul.AspNet-Menu li:hover a,
.PrettyMenu ul.AspNet-Menu li:hover span,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover a,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover span,
.PrettyMenu ul.AspNet-Menu li:hover li:hover a,
.PrettyMenu ul.AspNet-Menu li:hover li:hover span,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover li.AspNet-Menu-Hover a,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover li.AspNet-Menu-Hover span,
.PrettyMenu ul.AspNet-Menu li:hover li:hover ul a:hover,
.PrettyMenu ul.AspNet-Menu li:hover li:hover ul span.Asp-Menu-Hover,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover li.AspNet-Menu-Hover ul a:hover,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover li.AspNet-Menu-Hover ul span.Asp-Menu-Hover
{
color: White;
}
.PrettyMenu ul.AspNet-Menu li:hover ul a,
.PrettyMenu ul.AspNet-Menu li:hover ul span,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover ul a,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover ul span,
.PrettyMenu ul.AspNet-Menu li:hover li:hover ul a,
.PrettyMenu ul.AspNet-Menu li:hover li:hover ul span,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover li.AspNet-Menu-Hover ul a,
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Hover li.AspNet-Menu-Hover ul span
{
color: Black;
}
/* While you hover over a list item (li) you are also hovering over a link or span because */
/* the link or span covers the interior of the li. So you can set some hover-related styles */
/* in the rule (above) for the li but set other hover-related styles in this (below) rule. */
.PrettyMenu ul.AspNet-Menu li a:hover,
.PrettyMenu ul.AspNet-Menu li span.Asp-Menu-Hover
{
color: White;
background: transparent url(activeArrowRight.gif) right center no-repeat;
}
.PrettyMenu ul.AspNet-Menu li.AspNet-Menu-Leaf a:hover
{
background-image: none;
}
/* -------------------------------------------------------------------------- */
/* When the Menu control's Orientation property is Horizontal the adapter wraps the menu with DIV */
/* whose class is AspNet-Menu-Horizontal. */
/* Note that the example menu in this web site uses absolute positioning to force the menu to occupy */
/* a specific place in the web page. Your web site will likely use a different technique to position your */
/* menu. So feel free to change all the properties found in this CSS rule if you clone this style sheet. */
/* There is nothing, per se, that is magical about these particular property value choices. They happen to */
/* work well for the sample page used to demonstrate an adapted menu. */
.PrettyMenu .AspNet-Menu-Horizontal
{
position:absolute;
left: 9.5em;
top: 0;
z-index: 300;
}
/* This rule controls the width of the top tier of the horizontal menu. */
/* BE SURE TO MAKE THIS WIDE ENOUGH to accommodate all of the top tier menu items that are lined */
/* up from left to right. In other words, this width needs to be the width of the individual */
/* top tier menu items multiplied by the number of items. */
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu
{
width: 45em;
}
/* This rule effectively says: style all tiers EXCEPT THE TOP TIER in the menu this way... */
/* In other words, this rule can be used to style the second and third tiers of the menu without impacting */
/* the topmost tier's appearance. */
/* Remember that only the topmost tier of the menu is horizontal. The second and third tiers are vertical. */
/* So, they need a much smaller width than the top tier. Effectively, the width specified here is simply */
/* the width of a single menu item in the second and their tiers. */
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu ul
{
width: 10.5em;
left: 0;
top: 100%;
}
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu ul ul
{
top: -0.3em;
}
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu ul ul
{
width: 11.5em;
}
/* Generally, you use this rule to set style properties that pertain to all menu items. */
/* One exception is the width set here. We will override this width with a more specific rule (below) */
/* That sets the width for all menu items from the second tier downward in the menu. */
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu li
{
width: 9em;
text-align:center;
}
/* This rule establishes the width of menu items below the top tier. This allows the top tier menu items */
/* to be narrower, for example, than the sub-menu items. */
/* This value you set here should be slightly larger than the left margin value in the next rule. See */
/* its comment for more details. */
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu ul li
{
text-align:left;
width: 10.5em;
}
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu ul ul li
{
width: 11.5em;
}
/* Third tier menus have to be positioned differently than second (or top) tier menu items because */
/* they drop to the side, not below, their parent menu item. This is done by setting the last margin */
/* value (which is equal to margin-left) to a value that is slightly smaller than the WIDTH of the */
/* menu item. So, if you modify the rule above, then you should modify this (below) rule, too. */
.PrettyMenu .AspNet-Menu-Horizontal ul.AspNet-Menu li ul li ul
{
margin: -1.4em 0 0 10.35em;
}
/* ------------------------------------------------------------------- */
/* Specific to this sample web site. */
/* These rules are probably not useful in your site. */
#SampleMenu
{
position:relative;
height: 13em;
font-size:small;
font-family: Tahoma;
}
#SampleMenu #Sample-Content
{
width: 44em;
height: 10em;
overflow: hidden;
position:absolute;
left: 9.5em;
top: 2em;
padding: 10px;
background: #B9D3EE;
font-family: "Times New Roman";
font-style:italic;
color: Black;
}
/* --------------------------------------------------------------------------------------------------- */
/* Used when the Menu adapter is NOT used. */
/* These styles are used by the Menu's skin, found in this theme's skin file. */
#SampleMenu .Menu-Skin-Horizontal
{
position:absolute;
left: 9.5em;
top: 0;
width: 45em;
z-index: 300;
}
#SampleMenu .Menu-Skin-Vertical
{
position:relative;
top: 3em;
left: 0;
z-index: 300;
}
#SampleMenu .Menu-Skin-StaticItem
{
background:#7795BD url(bg_nav.gif) repeat-x;
font-size: small;
}
#SampleMenu .Menu-Skin-DynamicHover
{
background:#7795BD;
}

Không có nhận xét nào: