Yes and no. For simple rounded corners, the plugin first attempts to use native browser support via css - i.e., border-radius - and uses tons of <div>s in browsers that don't (i.e., IE). And of course, all the fancy, non-round corners use extra markup. Compare:
HTML Code:
<div style="-moz-border-radius: 10px 10px 10px 10px;" class="demo"><h1>Round</h1> <code><p>$(this).corner();</p></code></div>
to
HTML Code:
<div style="border: medium none; position: relative;" class="demo"><div style="position: relative; margin: -20px -20px 10px;" class="jquery-corner"><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 10px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 9px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 8px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 7px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 6px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 5px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 4px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 3px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 2px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 1px;"></div></div><h1>Bevel</h1> <code><p>$(this).corner("bevel");</p></code><div style="position: absolute; margin: 0pt; padding: 0pt; left: 0pt; bottom: 0pt; width: 100%;" class="jquery-corner"><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 1px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 2px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 3px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 4px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 5px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 6px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 7px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 8px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 9px;"></div><div style="overflow: hidden; height: 1px; min-height: 1px; font-size: 1px; background-color: transparent; border-style: none solid; border-color: rgb(255, 255, 255); border-width: 0pt 10px;"></div></div>
As for processing time, everything that's "cool" works slowly on some systems. I can think of far more superfluous things that take far more resources. This, however, is convenient in that you don't have to double- and triple-code to get your desired effect in all browsers - and, also because it's js, you get a consistent effect in all browsers. And if js is turned off, you haven't really lost much (degrades gracefully).
Bookmarks