Greasy Fork

Greasy Fork is available in English.

[alpha] Убрать новый дизайн VK.com (CSS)

Удаляем новое оформление ВКонтакта, возвращая старый дизайн. (Тест версии css из сети)

目前为 2016-08-24 提交的版本,查看 最新版本

// ==UserScript==
// @name		 [alpha] Убрать новый дизайн VK.com (CSS)
// @version		 2.5.19
// @description	 Удаляем новое оформление ВКонтакта, возвращая старый дизайн. (Тест версии css из сети)
// @author		 ICP
//=	=	^^^ Автор, версия и название скрипта ^^^
// @match		 *://vk.com/*
//=	=	^^^ Перехватываемые URL ^^^
// @exclude		 *://vk.com/notifier.php?*
// @exclude		 *://vk.com/al_*
// @exclude		 *://vk.com/upload_fails.php
// @exclude		 *://vk.com/ads_rotate.php?*
//=	=	^^^ Исключённые URL, перехват которых запрещён ^^^
// @run-at		 document-end
// @grant		 GM_xmlhttpRequest
//=	=	^^^ Включение скрипта при старте загрузки документа ^^^
// @connect		 userstyles.org
// @namespace		 ICP
// ==/UserScript==
(function() {

document.querySelector("link[rel*='icon']").href = "http://vkontakte.ru/images/favicon.ico"; // замена иконки VK на привычное В

var addCSS = function () {/*
body {
	background: #FFFFFF; // Выбеливаем фон
}

body:before {
	color: rgba(0,0,0,.20); // Изменение цвета объявленной альфы на чёрный, с прозрачностью 80%
}


.ui_search {
	padding: 7px 7px 7px;
	margin: 1px; // форма ввода поиска
}

.im-page.im-page_classic .im-page--dcontent {
	padding-top: 17px; // Смещение списка диалогов, был частично закрыт даже при пустом баре
}

.page_square_photo {
	width: 150px;
	margin-left: 0px; // стыковка фотостатусов в единый блок
}

.nim-dialog:not(.nim-dialog_deleted).nim-dialog_unread.nim-dialog_classic {
	background: #85f78a; // Изменение фоновой подсветки непрочитанных диалогов
}

.nim-dialog.nim-dialog_unread .nim-dialog--unread {
	display: block !important;
	border-radius: 5px;
	background: #72b693; // Кол-во непрочитанных
}

.nim-dialog.nim-dialog_unread-out:not(.nim-dialog_failed) .nim-dialog--unread {
	display: block !important;
	background: rgba(200,147,173,.9);
	border-radius: 50% !important; // Знак непрочитанного своего
}

.nim-dialog.nim-dialog_unread-out:not(.nim-dialog_failed) .nim-dialog--text-preview {
	background: rgba(200,255,200,.9); // Фон непрочитанного своего
}

.wide_column_left .narrow_column_wrap {
	position: fixed; // Оформление групп
}

.ui_rmenu {
	width: 607px; // калибровка верхнего меню настроек
}

.wide_column_left .narrow_column_wrap {
	position: relative; // включена навигация настроек (автор почему-то её выключил)
}

.scroll_fix {
	overflow-x: overlay; // Если страница не помещается (приложения), дать горизонтальный скролл
}

._im_ui_peers_list {
	display: block; // Восстанавливаю панель открытых диалогов. Которую зачем-то скрыли в .44
}

.im-page_history-show + .im-right-menu ._im_ui_peers_list {
	top: 35px; // Смещение панели открытых на подходящее место внутри диалога
}

.im-page.im-page_classic .im-page--header-chat {
	height: 0; // Убираем сделанный невидимым - блок шапки, руки надо отрывать за такую вёрстку.
}

.im-page .im-page--header-inner {
	height: 0; // И второй
}

.page_square_photo {
	background-size: 99px;
	width: 99px;
	height: 99px;
	zoom: 1;
	-moz-transform: scale(1); // Исправляем масштабирование фотостатусов на странице
}

.im-mess-stack .im-mess-stack--content .im-mess-stack--pname {
	top: 0px;
	padding-top: 11px;
	height: 0px; // Исправление контейнера сообщения диалога
}

.im-dialog-select .im-dialog-select--btn, #ui_rmenu_fav {
	height: 13px; // Исправление размеров кнопок зведы сплюсом.
}

.im-dialog-select .im-dialog-select--btn, #ui_rmenu_fav {
	padding: 6px 16px 7px; // Исправление размеров кнопок зведы сплюсом.
}

.im-create .im-create--dcontent {
	width: 100% !important; // Ширина списка добавляемых в беседу
}

.im-create.im-create_classic .im-create--dcontent .ui_scroll_content {
	width: 103%;
	margin-left: -1%;
  -webkit-column-count: 2;
  -webkit-column-gap: 1px;
     -moz-column-count: 2;
     -moz-column-gap: 1px;
          column-count: 2;
          column-gap: 1px; // Два столбца для +, по порядку (пары строк) - размеры, Chrome и Safari 3, Firefox 3.5+, Opera 11+ и новые
}
/* Окончание добавленного CSS*/}.toString().slice(15,-1); // Добавление многострочной переменной, для редактирования и изменения подключаемого стиля.

	GM_xmlhttpRequest({ // Загрузка CSS
		method: "GET", // Метод
		url: 'http://userstyles.org/styles/128986.css', // Адрес
		onload: function(event) { // Если получен
			var VK_CURRENT_CSS_CODE = event.responseText.slice(35,-1); // Отделяем чистый CSS
            VK_CURRENT_CSS_CODE = VK_CURRENT_CSS_CODE.replace(/(body:before[\s\S]*content:.*alpha).*(";|';)/i, '$1$2'); // чистим избыточную инфу
			var head = document.getElementsByTagName('html')[0]; // определение действующего html-а, должно работать в любом браузере
			var styleElement = document.createElement("style"); // Создайм стиль
			styleElement.type = 'text/css'; // Тип
			styleElement.appendChild(document.createTextNode('/*--- Применение старого стиля ---*/\n'+VK_CURRENT_CSS_CODE+"\n"+addCSS)); // Собираем вместе
			head.appendChild(styleElement); // вставляем метатег внешнего стиля
			console.log('Стиль добавлен! - '+window.location.href); // Рапортуем в лог с указанием URL
		}
	});
})();