Как это реализовано, можете посмотреть
здесь, в левом нижнем углу там зелёная половинка овала.
Первым делом сделаем выезжающую сбоку панельку для переключения цветовых тем. У меня там картинки, при клике на которые меняется цветовая тема
<div id="color" style="width: 50px; height: 233px; position: fixed; left: -57px; bottom: 15px; transition: all 1s;">
<img id="black" src="/template/images/color/black.png" alt="" />
<img id="blue" src="/template/images/color/blue.png" alt="" />
<img id="white" src="/template/images/color/white.png" alt="" />
<img id="pic" src="/template/images/color/pic.png" alt="" style="width:17px; height: 33px; right: -33px; border: 0;" />
</div>
#color img
{
width: 90%;
margin: 1px auto;
display: block;
cursor: pointer;
border: 2px solid black;
}
// Выдвижение панельки изменения цветов
var pic = 0;
$('#pic').bind('click touchstart', function()
{
if(!pic)
{
$(this).parent().css('left', 0);
setTimeout(function()
{
pic = 1;
}, 11);
}else
{
$(this).parent().css('left', '-57px');
setTimeout(function()
{
pic = 0;
}, 11);
}
});
// изменяем тему подключая или удаляя два css-файла, black.css и blue.css
var colors = ["black", "blue"];
$('#color img:not(#pic)').bind('click touchstart', function()
{
var color = $(this).attr("id");
if(color == 'white')
{
colors.forEach(function(color)
{
$('head').find('link').each(function()
{
if($(this).attr('class') == color)
{
$(this).remove();
}
});
});
}else
{
$('head').append('<link class="'+color+'" rel="stylesheet" href="/template/css/'+color+'.css">');
}
});