Комментарии 10
Отличие вашего метода от, например этого, про который говорилось в комментариях к обоим статьям, да и в других тоже, заключается в выносе лишнего кода в JS?

P.S.: В jQuery можно написать проще
$('container').before('some code').after('some code')
В общем-то отличий не так много, я сразу про уникальность оговорился. В способе, который использую я есть еще и градиент.
Возможно я и изобрел велосипед, однако такого велосипеда я пока не видел, хотя постоянно читаю RSS популярных online-изданий (cssplay.co.uk в том числе).

Спасибо за упрощенную запись jQuery
с jquery пользуюсь плагином от Avinoam Henig.

есть только один существенный минус для поддержки IE нужно еще подключать дополительный js
«Explorer Canvas Release 2 Javascript File»

Умеет делать закругленные углы и градиенты.
если нужно, то при желании им можно делать задний фон сайта градиентом.
Моя лепта, чтобы отойти от jQuery:
document.getElementsByClassName = function(cl) {
  var retnode = [];
  var myclass = new RegExp('\\b'+cl+'\\b');
  var elem = this.getElementsByTagName('*');
  for (var i = 0; i < elem.length; i++) {
    var classes = elem[i].className;
    if (myclass.test(classes)) retnode.push(elem[i]);
  }
  return retnode;
};

А дальше перебор результата в цикле и работа со свойством innerHTML.
Не особо понимаю смысл использования JS и статичной вертски, к JS не привязанной. Код почище, но не проще покурить в сторону canvas/vml — тут и углы чище будут (JS-а больше), зато гибкость в разы увеличивается
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.