A long time ago, a user asked this question, and someone answered the answer bellow, I took the answer and saved in a text file because I found it usefull, I do not know who wrote this answer, so I appologize to him that I am using the answer without referencing the author:
The core code allows you to override the DNN skin. This is all that the DNN site skin is doing. There are 2 ways to override the skin. First, by a querystring. This is the method that is used to preview the skins in the Page Settings, Site Settings, and Skin Manager. The other way is to set a cookie. This is the method that the DNN site is using. Upon clicking the icon, a cookie is set. When the page reloads, the skin in the cookie is used instead of the skin that is specified in the Page/Site Settings.
function sizeLayout(size){ setSkinCookie("DotNetNuke_Skin_Layout_Size",size, new Date("December 31, 2010 23:59:59"),"/"); location.reload();}
function setSkinCookie(name, value, expires, path, domain, secure) { var curCookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : ""); document.cookie = curCookie;}