How do I create a menu which looks like this...
I don't want to use the PSD images. I would prefer using icons from some package like FontAwesome and have the backgrounds/css generated in CSS.
A version of the menu that is using the PSD to to generate images of the tooltip and then using it can be found here.
Ana's response is kick ass! That's some serious CSS-fu.
My solution may not be quite what you are hoping for, but it's another possible solution. I'm working on a compass interface right now that has a similar style of arc shaped buttons. I decided to develop it using Raphael and SVG.
I created an arc shape in Illustrator, exported the SVG for it, grabbed the path definition for the arc from the exported SVG file, and used Raphael to build my interface with it.
Here's a JSFiddle of it.
Here's the JavaScript:
Here's the related CSS:
Another very good way would be to use JavaScript for the positioning.
DEMO + TUTORIAL on making an animated radial menu
A pro to this method is that you can use any number of elements and it will keep positioning them radially, without having to change any of your CSS.
The JavaScript in question is:
Almost 3 years later, I finally made the time to revisit this and post an improved version. You can still view the original answer at the end for reference.
While SVG may be the better choice, especially today, my goal with this was to keep it just HTML and CSS, no JS, no SVG, no images (other than the background on the root element).
2015 demo
Screenshots
Chrome 43:
Firefox 38:
IE 11:
Code
The HTML is pretty simple. I'm using the checkbox hack to reveal/ hide the menu.
I'm using Sass to keep this logical and make it easier to change things if needed. Heavily commented.
Original answer
My attempt at doing something of the kind with pure CSS:
demo
(click the star)
Works in Chrome, Firefox (a bit weirdish blur effect on hover), Opera (ends look smaller) & Safari (ends look smaller).