CSS Dock Menu
May 8th, 2007 Filed in: Design, Mac Jump to comments
If you are a big Mac fan, you will love this CSS dock menu that I designed. It is using Jquery Javascript library and Fisheye component from Interface and some of my icons. It comes with two dock styles - top and bottom. This CSS dock menu is perfert to add on to my iTheme. Here I will show you how to implement it to your web page.
Update: I no longer support the questons regard this script. If you like the HiGloss icons used in the demos, you can get them as stock icons at IconDock.
Download CSS Dock Menu
(View Demo)
Zip package included JS, CSS, and icons
1. Download source files
Download the CSS dock menu zip package.
2. Insert code
In between the HTML <head> tag, add the following code
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/interface.js"></script>
<link href="style.css" rel="stylesheet" type="text/css" />
<!--[if lt IE 7]>
<style type="text/css">
.dock img { behavior: url(iepngfix.htc) }
</style>
<![endif]–>
The first part is the Javascript, second part is CSS stylesheet, and last part is the PNG hack for IE 6.
3. Configuration
Don’t forget to add the following code to anywhere within the <body> tag:
<script type="text/javascript">
$(document).ready(
function()
{
$(’#dock2′).Fisheye(
{
maxWidth: 60,
items: ‘a’,
itemsText: ’span’,
container: ‘.dock-container2′,
itemWidth: 40,
proximity: 80,
alignment : ‘left’,
valign: ‘bottom’,
halign : ‘center’
}
)
}
);
</script>
4. Add or remove item
To add menu item to the top dock (note: span tag is after the img tag):
<a class="dock-item" href="#"><img src="images/home.png" alt="home" /><span>Home</span></a>
To add menu item to the bottom dock (note: span tag is before the img tag):
<a class="dock-item2" href="#"><span>Home</span><img src="images/home.png" alt="home" /></a>
Browser Compatibility
I have tested on IE 6, IE 7, Opera 9, Firefox 2, and Safari 2 (although there are some minor rendering issues with Safari).


May 10th, 2007 at 3:21 am
I love it!
May 10th, 2007 at 3:04 am
It’s gorgeous!
Also I’m thinking that dotted borders which appear after clicks on icons pictures look not very pretty, it’s possible to fix by following piece of code:
$(’a').click(function(){$(this)[0].blur();});
May 10th, 2007 at 2:44 am
Could you create a vertical version that stays anchored to the browser window? Most blog themes have lots of room on the sides.
Thanks!
May 10th, 2007 at 2:22 am
Its really great
May 10th, 2007 at 12:50 am
can i use this dock in blogger????
May 10th, 2007 at 12:31 am
Thank you for your CSS Dock Menu.I am looking for it.
May 9th, 2007 at 11:57 pm
好效果
May 9th, 2007 at 9:22 pm
cool ! download…tkinks
May 9th, 2007 at 6:37 pm
It’s cool. Very nice. No comment.
May 9th, 2007 at 5:52 pm
I think the icons and general design look great. However, I have several misgivings about this post:
1) This is quite inaccurately named, since the bulk of the effect is done through JavaScript and inline images. There’s very little CSS involved, and none for the effect itself. This leads to confusion (as seen in some of the comments) that it’s done mainly through CSS.
2) Why is the $(document).ready(); script block in the body? You’re not promoting very good separation of behaviour and structure with that. Works just the same in the head, and it’s tidier.
3) This is aimed the commenters: This is not his JavaScript work, as he’s said in the post. He only reskinned it, for the most part. That also means the various bug complaints should be sent to the Interface website (there’s a link in the post).
I made a similar comment on jquery.com
Anyways, good work, otherwise. Nice to see others use jQuery. Your site design looks great, and you’ve hit all the right spots with semantics, etc., fellow Torontonian. :)