This is another example of round-corner in CSS, but this one requires images. The figure 1 is a screenshot of the actual horizontal nav bar I created a while ago.
Figure 1.
For this nav bar, I created 4 images - Top-left and top-right for the nav bar, and top-left and top-right corner for tabs. All images are created in 4 pixel by 4 pixel dimension. The figure 2 show the top-left of nav bar, and top-left of tabs.
Figure 2.
The nav_tl.gif (nav) has orange round corners, while tab_tl.gif (tab) has orange background with transparent corners, because I wanted to create a "selected" tab and mouse-over color-change effect only with CSS color change, without using extra images.
The code below is the HTML part of the nav bar. I assign the background-image to <a> tag for top-left corner gif, and I gave nonsense tag, <span> to apply the top-right corner gif as background image.
HTML (Navbar using unordered lists)
<div id="navBar"> <ul> <li><a href="#" class="selected"><span>Home</span></a></li> <li><a href="#"><span>Blog</span></a></li> <li><a href="#"><span>Extras</span></a></li> </ul> </div>
Tabs with Round-Corners
/* Top-left corner */ #navBar a { background: url("images/tab_tl.gif") no-repeat top left; } /* Top-right corner */ #navBar a span { background: url("images/tab_tr.gif") right top no-repeat; } /* Hover-state ("Blog" tab in Figure 1) */ #navBar a:hover { background-color: #F9CA66; } /* Selected Tab ("Home" tab in Figure 1) */ #navBar a.selected, #navBar a.selected:hover { color: #750; background-color: #fff; }
The entire CSS for the nav bar looks like this:
CSS (All)#navBar { font-family: "Trebuchet MS", Helvetica, sans-serif; font-size: 18px; width: 270px; color: #fff; background: #e0a528 url("images/nav_tl.gif") no-repeat top left; position: relative; } #navBar ul { white-space: nowrap; padding: 10px 15px 0; margin: 0; background: url("images/nav_tr.gif") no-repeat top right; overflow: hidden; } #navBar li { display: inline; list-style-type: none; } #navBar a { color: #fff; text-decoration: none; padding-left: 10px; margin: 0 3px; background: url("images/tab_tl.gif") no-repeat top left; } #navBar a span { background: url("images/tab_tr.gif") right top no-repeat; padding-right: 10px; } #navBar a:hover { background-color: #F9CA66; } #navBar a.selected, #navBar a.selected:hover { color: #750; background-color: #fff; }
No comments:
Post a Comment