Late party, but if you manage to avoid IE <9 support you can do it in pure CSS. 
<div id="center"> <div id="tl"></div> <div id="tr"></div> <div id="bl"></div> <div id="br"></div> </div> div { width: 50px; height: 50px; background-color: #ccc; border-radius: 100px; } #center { position: relative; margin: 100px 0 0 100px; border: solid #fff 1px; } #tl, #tr, #bl, #br { position: absolute; height: 75px; width: 75px; z-index: -1; } #tl { border-radius: 100px 0 0 0; top: -50px; left: -50px; } #tr { border-radius: 0 100px 0 0; top: -50px; left: 26px; } #bl { border-radius: 0 0 0 100px; top: 26px; left: -50px; } #br { border-radius: 0 0 100px 0; top: 26px; left: 26px; }
See the code in action here: http://jsfiddle.net/nchtG/
If you need to support IE in versions less than 9, as Andrei already mentioned, Raphaël is your best option.
source share