User agent stylesheet как изменить

Если поместить в тело (HTML-элемент body ) HTML-страницы текст и (или) какие-либо HTML-элементы, не указывая нигде их стилей, то браузер всё равно как-нибудь да и отобразит эту HTML-страницу. Например, если в моем браузере «Microsoft Edge» (на движке «Chromium»), в операционной системе «Windows…

Если поместить в тело (HTML-элемент body) HTML-страницы текст и (или) какие-либо HTML-элементы, не указывая нигде их стилей, то браузер всё равно как-нибудь да и отобразит эту HTML-страницу.

Например, если в моем браузере «Microsoft Edge» (на движке «Chromium»), в операционной системе «Windows 10», в тело HTML-страницы добавить простой текст, не указывая нигде никаких стилей, то браузер отобразит текст черным цветом на белом фоне. А если заглянуть при этом в инструмент «Elements» из инструментов разработчика (F12) браузера, то можно заметить, что браузер добавил к HTML-элементу body такой стиль:

body {
    display: block;
    margin: 8px;
}

Таким образом, наш текст еще и аккуратно отодвинут от границ области просмотра на 8 пикселей.

Этот стиль, как видно в инструменте разработчика «Elements», помечен надписью «user agent stylesheet». Что это значит? Вообще «user agent» — это вид программ, на русский переводится как «агент пользователя». В данном случае под этим словосочетанием подразумевается наш браузер, который служит агентом пользователя, посредником между пользователем и вебом (Всемирной паутиной). То есть словосочетание «user agent stylesheet» переводится на русский как «таблица стилей браузера».

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

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

В устаревшем сейчас браузере «Internet Explorer» цвет текста и фона по умолчанию можно было задать через меню «Свойства браузера», там для этого была специальная кнопка «Цвета».

В моем теперешнем браузере «Microsoft Edge» (на движке «Chromium») я не смог найти ни того, как можно настроить цвета по умолчанию, ни того, как можно изменить таблицу стилей браузера по умолчанию (она же «user agent stylesheet»).

Я, конечно, обыскал настройки браузера. Для этого следует нажать кнопку с многоточием в правом верхнем углу окна браузера. В открывшемся меню нужно выбрать пункт «Settings» (по-русски «Настройки»). После этого откроется новая вкладка браузера с его настройками. В левом меню этой вкладки есть пункт «Appearance» (по-русски «Внешний вид»; тут настройки не только внешнего вида браузера, но есть и настройки, которые касаются отображения HTML-страниц). Тут можно поменять тему оформления самого браузера, настроить его панель инструментов (какие-то кнопки убрать, какие-то — показать). Можно выбрать шрифт, которым по умолчанию будет отображен текст HTML-страницы, и размер этого шрифта по умолчанию. Однако, здесь нельзя настроить цвета по умолчанию для элементов отображаемой HTML-страницы или таблицу стилей браузера по умолчанию.

Еще у меня была мысль о том, что, возможно, искомые настройки можно найти в настройках моей операционной системы (напомню, у меня — «Windows 10»). Чтобы это проверить, я нажал кнопку «Пуск», а в открывшемся меню, в столбце слева — пункт «Параметры». В открывшемся окне я выбрал пункт «Персонализация». Опять открылось новое окно, в котором, в меню слева, можно просмотреть пункты «Фон» и «Цвета». Как выяснилось, они не влияют на отображение браузером HTML-страниц.

Выводы. На сегодня для указанного выше браузера мы не можем поменять цвета по умолчанию или таблицу стилей браузера по умолчанию (она же «user agent stylesheet»). Скорее всего, это верно и для браузера «Google Chrome», а также для других браузеров, построенных на движке «Chromium», исходя из того, что они работают на одном и том же движке.

Но мы можем, конечно, для своей HTML-страницы написать свои стили на языке CSS, которые «перекроют» («затрут») соответствующие стили по умолчанию от браузера, так как стили автора HTML-страницы обладают большим приоритетом по сравнению со стилями по умолчанию от браузера (они же «user agent stylesheet»).

vlad-55

152 / 16 / 4

Регистрация: 21.02.2009

Сообщений: 2,438

1

10.04.2014, 22:29. Показов 60397. Ответов 13

Метки нет (Все метки)


В стилях прописано:

CSS
1
text-decoration:none  !important ;

Однако, инспектор кода показывает, что user agent stylesheet блокирует эту директиву (скриншот).

Есть ли способ как-то обойти или ликвидировать эту блокировку?

Изображения

 



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

10.04.2014, 22:29

13

418 / 380 / 163

Регистрация: 03.01.2013

Сообщений: 966

10.04.2014, 22:42

2

User-стили и так перебиваются обычным способом. Дело, скорее всего, в чем-то другом.



1



152 / 16 / 4

Регистрация: 21.02.2009

Сообщений: 2,438

10.04.2014, 22:46

 [ТС]

3

Цитата
Сообщение от monochromer
Посмотреть сообщение

Дело, скорее всего, в чем-то другом.

Как поискать это другое?



0



418 / 380 / 163

Регистрация: 03.01.2013

Сообщений: 966

10.04.2014, 22:50

4

Выложите больше информации о проблеме. Как подключаете стили? Другие стили пробовали задавать? Например, цвет.



1



152 / 16 / 4

Регистрация: 21.02.2009

Сообщений: 2,438

10.04.2014, 23:13

 [ТС]

5

Стилей вцелом довольно много, и часть из них подключаются внешним файлом, а часть находятся непосредственно в HTML файле.

Я привел лишь одну заблокированную браузнром директиву, а на самом деле их несколько.

Наверняка мой случай не уникальный и хотелось бы понять, как решаются такие проблемы. Ведь возникновение конфликта стилей можно обойти?



0



29 / 29 / 9

Регистрация: 03.03.2014

Сообщений: 58

11.04.2014, 00:05

6

Никак его нельзя убрать вовсе — можно только переопределить. Например, как на картинке.
Подробнее при лицезрении вашего кода.

Миниатюры

Есть ли способ противостоять user agent stylesheet ?
 



1



327 / 217 / 97

Регистрация: 04.11.2012

Сообщений: 638

11.04.2014, 08:14

7

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



1



75 / 75 / 11

Регистрация: 04.08.2012

Сообщений: 526

Записей в блоге: 2

11.04.2014, 12:28

8

Скорее всего дело в том, что где то во внутренних стилях тоже определен important для данного text-decoration вот по этому он и не дает себя заметить. Но это всего лишь предположение. Для того, чтобы понять проблему нужно посмотреть код.
И еще у меня есть предположение, что вы пытаетесь сделать изменение в некой CMS?



1



152 / 16 / 4

Регистрация: 21.02.2009

Сообщений: 2,438

11.04.2014, 23:43

 [ТС]

9

Цитата
Сообщение от sashok89
Посмотреть сообщение

И еще у меня есть предположение, что вы пытаетесь сделать изменение в некой CMS?

В принципе, так и есть. Только эту CMS я сам и сделал пару лет назад…
Хочу все же попробовать выяснить причину, даже ради спортивного интереса. Попробую постепенно очистить страницу вообще от всего и таким образом найти комбинацию, вызывающую этот эффект.



0



29 / 29 / 9

Регистрация: 03.03.2014

Сообщений: 58

12.04.2014, 00:32

10

Попробую постепенно очистить страницу вообще от всего и таким образом найти комбинацию

Аэм, зачем?
Правой кнопкой на элементе и «просмотр кода элемента» или что-то в зависимости браузера. Далее там будет полный холст всех стилей, что применяются к этому элементу.



1



152 / 16 / 4

Регистрация: 21.02.2009

Сообщений: 2,438

12.04.2014, 01:08

 [ТС]

11

Я так и делал; вообще все стили отключил, но остался user agent stylesheet, который все и определяет…



0



Администратор

11997 / 5327 / 268

Регистрация: 05.04.2011

Сообщений: 14,086

Записей в блоге: 2

12.04.2014, 01:12

12

vlad-55, ссылку на страницу



0



Эксперт по компьютерным сетямЭксперт NIX

12384 / 7223 / 758

Регистрация: 09.09.2009

Сообщений: 28,185

12.04.2014, 01:15

13

Цитата
Сообщение от vlad-55
Посмотреть сообщение

Я так и делал; вообще все стили отключил, но остался user agent stylesheet, который все и определяет…

кажется мне, вот это и есть ключевая фраза
когда вы ОТКЛЮЧИЛИ все свои указания стилей, чем должен руководствоваться браузер для отображения тех или иных элементов?
правильно — своим собственным дефолтным набором



0



16 / 0 / 0

Регистрация: 29.11.2014

Сообщений: 3

30.09.2015, 09:40

14

тоже парился со стилями пока не сделал просто копировал с user agent stylesheet.
Добавил к своим стилям и все переопределилось.

Типо было так:

ul, menu, dir { user agent stylesheet.
display: block;
list-style-type: disc;
-webkit-margin-before: 1em;
-webkit-margin-after: 1em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
-webkit-padding-start: 40px;
}

Добавил к стилю к моему параметры из user agent stylesheet.

ul.item {
list-style-type: none;
display: block;
float: left;
list-style-type: disc;
-webkit-margin-before: 0em;
-webkit-margin-after: 0em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
-webkit-padding-start: 2px;
}

И всё.



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

30.09.2015, 09:40

Помогаю со студенческими работами здесь

подмена user agent’a
короче надо нарегить рефералов (знаю что так нехорошо делать, но надо)…какой софт (или сайти)…

curl и user agent
Добрый день, интересует такой вопрос, допустим есть вот такой код:

$url="http://адрес сайта";…

Пустой user-agent
Есть самописный скрипт для отслеживания посещений сайта. В базу сохраняются некоторые данные,…

Как вставить user agent
Как вставить в этот код user agent .чтобы определялся точно как браузер.И если можно прокси сервера…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

14

Однажды я написал веб-страницу в соответствии с инструкциями моего инструктора и обнаружил, что стиль тега h2 был неправильным. Затем я нажал F12 для отладки и нашел стиль, который никогда не определял на панели стилей справа. Из таблицы стилей пользовательского агента после просмотра информации Обнаружено, что этот продукт является форматом, автоматически добавляемым браузером.

В частности, это так: таблица стилей агента пользователя будет перезаписана тем, что вы установили в своем собственном CSS. Они простоСамый низкий уровеньБез страницы или какой-либо таблицы стилей, предоставленной пользователем, браузер все равно должен каким-либо образом представлять контент, и таблица стилей агента пользователя просто описывает это. Поэтому, если вы считаете, что есть проблема с таблицей стилей пользовательского агента, тогда у вашего HTML или CSS или обоих (вы ничего не написали) действительно есть проблема.

Концепцию таблицы стилей пользовательского агента можно посмотреть в официальной документации:Нажмите, чтобы открыть ссылку

Решение 1

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

Скопируйте и вставьте его, измените стиль в своем собственном коде

Пересмотренный результат

хорошо, решение проблем

Решение 2: Напишите reset.css или normalize.css

Цель: уменьшить несоответствие браузера по умолчанию высоте строки, полей и размера шрифта заголовка

Пример кода reset.css

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

Надеюсь, это поможет вам

Понравилась статья? Поделить с друзьями:
  • Used but never defined error
  • Useaddtobasket error message
  • Use toolkit package on error перевод
  • Use the pc health check app to check compatibility как исправить
  • Use sql syntax error