Скрипт, приведенный ниже, не преобразует prosilver в модерновый стиль, а лишь убирает (точнее, закрывает в комментарии) все излишества в файлах css стиля (скругления, градиенты, тени блоков), тем самым упрощая жизнь дизайнерам, желающим получить в дальнейшем некое подобие Metro или Flat или непоймичегоплиточного ) Или сразу использовать результат (по вкусу - после перекрашивания) как более-менее приемлемый ) Скриншот: Примитивный скрипт (назовём его undecorate.php) разыскивает все файлы css в текущем каталоге и модифицирует их как было сказано выше:
Код: Выделить всё
<?php
// undecorate: undecorate style
// v.0.0.1 (c) 2015 c61 http://c61.no-ip.org
echo "undecorate: processing...<br />\n";
function remstrs(&$css,$search) {
if(preg_match_all("/(.*\n)/iu",$css,$strings)) {
$new_css = '';
$comment = false;
foreach ($strings[0] as $string) {
$skip = $comment;
$string = str_replace("\n","",$string);
if ( !$comment ) {
if ( strpos($string,"/*") === 0 ) {
$skip = true;
if ( strpos($string,"*/") === false ) {
$comment = true;
}
}
} else {
if ( strpos($string,"*/") !== false ) {
$comment = false;
$skip = true;
}
}
if ( !$skip ) {
if ( strpos($string,$search) !== false ) {
$string = "/*".$string."*/";
}
}
$new_css .= $string . "\n";
}
$css = $new_css;
}
}
$css_files = glob('*.css');
foreach ($css_files as $css_file) {
if ( ($css = file_get_contents($css_file)) === false ) {
echo "Can't get file $css_file <br />\n";
} else {
echo "Processing file $css_file <br />\n";
$css = str_replace("\r","",$css) . "\n";
remstrs($css,'border-radius');
remstrs($css,'border-top-left-radius');
remstrs($css,'border-top-right-radius');
remstrs($css,'gradient');
remstrs($css,'bg_button');
remstrs($css,'bg_header');
remstrs($css,'bg_list');
remstrs($css,'box-shadow');
$css = str_replace("\n\n\n","\n",$css);
if ( file_put_contents($css_file,$css) === false ) {
echo "Can't put file $css_file <br />\n";
}
}
}
echo "done.<br />\n";
?>
Ещё одно "излишество" или даже не "излишество", а на мой извращенный вкус "некрасивость", это фиксированная ширина prosilver. Для избавления можно модифицировать common.css:
- ищем
body {
иpadding: 12px 0;
, заменяем наpadding: 0;
- ищем
#wrap {
и комментируемmax-width: 1152px;
, там жеpadding: 15px;
заменяем наpadding: 0 15px;
- сразу после
#wrap {
будет@media
дляmax-width: 1220px
иmax-device-width: 1220px
, комментируем весь этот@media
.headerbar {
, и перед ним добавляемКод: Выделить всё
#page-header, #page-footer, .forabg, .forumbg, .post, .panel {
margin-right: -15px;
margin-left: -15px;
}
@media only screen and (max-width: 700px), only screen and (max-device-width: 700px) {
#page-header, #page-footer, .forabg, .forumbg, .post, .panel {
margin-right: 0;
margin-left: 0;
}
}
P.P.S. Некоторые "дизайнеры" на гуру воспринимают скрипты, изменяющие стили, как нечно враждебное, видимо, из-за плохого знания php, и мнения, что у них отбирают их хлеб Ну и пусть дальше с этим живут, а мы постараемся сберечь своё здоровье, подрываемое ручным ковырянием в css