jQuery.fn.rounded = function() {
  return this.each(function() {
    var elem = $(this);

    // build wrapper
    var wrapper = $('<div class="rounded_wrapper"></div>');
    /*wrapper.width(elem.width());
    wrapper.height(elem.height());*/

    /*// move CSS properties from elem to wrapper
    wrapper.css('float', elem.css('float'));
    elem.css('float', 'none');

    wrapper.css('margin-right', elem.css('margin-right'));
    elem.css('margin-right', '0');

    wrapper.css('margin-left', elem.css('margin-left'));
    elem.css('margin-left', '0');

    wrapper.css('margin-bottom', elem.css('margin-bottom'));
    elem.css('margin-bottom', '0');

    wrapper.css('margin-top', elem.css('margin-top'));
    elem.css('margin-top', '0');*/

    wrapper.css('float', elem.css('float'));
    elem.css('float', 'none');
    props = ['margin-left', 'margin-right', 'margin-top', 'margin-bottom']
    for (i in props) {
      wrapper.css(props[i], elem.css(props[i]));
      elem.css(props[i], '0');
    }

    /*wrapper.css('margin', elem.css('margin'));
    elem.css('margin', '0');*/

    elem.css('border', '0');

    wrapper.css('display', 'block');
    elem.css('display', 'block')

    wrapper.css('position', 'relative');

    // wrap image
    elem.wrap(wrapper);

    // add rounded corners
    elem.after('<div class="tl"></div>');
    elem.after('<div class="tr"></div>');
    elem.after('<div class="bl"></div>');
    elem.after('<div class="br"></div>');
  });
};

jQuery.fn.rounded_div = function() {
  return this.each(function() {
    var elem = $(this);
    // add rounded corners
    elem.append('<div class="tl"></div>');
    elem.append('<div class="tr"></div>');
    elem.append('<div class="bl"></div>');
    elem.append('<div class="br"></div>');
    elem.removeClass('rounded');
    elem.addClass('rounded_wrapper');
    if (elem.css('position') != 'absolute') {
      elem.css('position', 'relative');
    }
  });
};

