2013-12-24 2 views
0

Что мне нужно - это нормализовать все стили, применяемые к элементам на странице. Например, весь шрифт должен быть точно таким же, анкеры должны быть удалены, а только оставшийся текст (или href), цвет шрифта должен быть черным, шрифт должен быть точно таким же.Javascript/CSS: нормализовать все стили элементов на странице?

Что не следует изменять относительные положения элементов так, что исходная структура сохраняется, но не декоративный с стилем шрифтов, цветом, и т.д. стиль

Причина этого заключается в том, чтобы уменьшить количество шум. По существу то, что я пытаюсь сделать, это создать «серого» версию веб-сайта, где многие разные сайты не имеют «цветов» или декоративных элементов или вариаций в том, как отображается текстовое содержимое в элементах, кроме позиционирования элементов.

Я нашел нормализацию или сброс css-файла в Интернете и выполнил его так, добавив его, но он, похоже, не делает то, что я ожидал выше (я действительно не уверен, что собственно файл css фактически нормализует).

var link = document.createElement("link"); 
link.href = "http://necolas.github.io/normalize.css/2.1.3/normalize.css"; 
link.type = "text/css"; 
link.rel = "stylesheet"; 
document.getElementsByTagName("head")[0].appendChild(link); 
+0

Нормализация или сброс CSS только нормализуют по tagname, все остальные css на странице будут иметь более конкретные правила, поэтому концепция, которую вы имеете, не изменит никаких свойств элементов, которые имеют стиль, применяемый к ним как встроенными, так и с помощью правил css – charlietfl

ответ

2

CSS-нормализатор, как normalize.css, «нормализует» стили в разных браузерах, делает стили по умолчанию во всех браузерах более или менее тот же. Например, если стиль по умолчанию <a> в Firefox окрашен в зеленый цвет, но Chrome имеет красный цвет, нормализует его до одного цвета, например, синий. Таким образом, оба браузера начинаются с синего.

Сброс CSS, как Meyer's CSS reset, с другой стороны полосы наиболее, если не все, стили из элемента. Например, <a> обычно будет синим и иметь подчеркивание. Сброс приведет к тому, что подчеркивание и цвет чернил. <h1> - <h6> обычно имеют размерную иерархию. Сброс будет одинаковым для всех размеров, что позволит вам предоставить их размеры.


Я предлагаю вам использовать normalize.css, а затем добавить в свои собственные стили после него, что дальнейшее раздеться, какие стили, которые требуют зачистки вниз.

Вы также можете сделать это другим способом и использовать сброс, а затем стиль, который требует стилизации, но это будет больше CSS, чем предыдущий подход. Вот почему нормализация была сделана в первую очередь.


Как @charlietfl указано в the comment, вы могли бы сделать что-то вроде «режиме чтения» сценарий там. Нормализовать и сбросить таблицы стилей вам больше не помогут. Подход к вашей собственной таблице стилей с особым стилем был бы лучшим подходом.

+1

, это для того, чтобы начинать страницу, предварительно формируя браузеры , Я получаю впечатление, что OP хочет переопределить существующий css, используя букмарклет, Greasemonkey или код расширения браузера ... для применения к любой странице – charlietfl

+0

да в основном я хочу очень «тупую» страницу, которая согласуется с s ize, цвета, стили, шрифт.Сохраняется только относительное расположение этих элементов. – javastudent

+0

@charlietfl Есть ли какой-нибудь известный «режим чтения»? – javastudent

1

Попробуйте использовать сброс стилей Эрика Мейера (далее: http://meyerweb.com/eric/tools/css/reset/) Это выходит за рамки normalize.css, на самом деле сбросить все размеры шрифтов, шрифты семейства, Прокладки, поля ...

Смежные вопросы