Как подключать reset css

Сброс CSS стилей, примеры работающих решений

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

Примеры скриптов сброса CSS стилей

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

Eric Meyer CSS Reset

Скрипт сброса от Eric Meyer, со слов самого автора, намеренно очень общий. Например в нем для элемента body не задан какой-либо цвет фона по-умолчанию. Поэтому он должен быть изменен, отредактирован, расширен и иным образом настроен в соответствии с вашими потребностями. Добавьте нужные цвета для страниц, ссылок и так далее.

/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */ 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

Yahoo! (YUI 3) Reset CSS

Сброс стилей CSS YUI 3 смягчает противоречивый стиль HTML-элементов браузерами, так же как и любой другой скрипт сброса CSS, чтобы создать надёжную основу для создания веб-сайтов и веб-приложений.

/* YUI 3.18.1 Copyright 2014 Yahoo! Inc. All rights reserved. Licensed under the BSD License. http://yuilibrary.com/license/ */ /* TODO will need to remove settings on HTML since we can’t namespace it. TODO with the prefix, should I group by selector or property for weight savings? */ html < color:#000; background:#FFF; >/* TODO remove settings on BODY since we can’t namespace it. */ /* TODO test putting a class on HEAD. — Fails on FF. */ body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td < margin:0; padding:0; >table < border-collapse:collapse; border-spacing:0; >fieldset, img < border:0; >/* TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit. */ address, caption, cite, code, dfn, em, strong, th, var < font-style:normal; font-weight:normal; >ol, ul < list-style:none; >caption, th < text-align:left; >h1, h2, h3, h4, h5, h6 < font-size:100%; font-weight:normal; >q:before, q:after < content:''; >abbr, acronym < border:0; font-variant:normal; >/* to preserve line-height and selector appearance */ sup < vertical-align:text-top; >sub < vertical-align:text-bottom; >input, textarea, select < font-family:inherit; font-size:inherit; font-weight:inherit; *font-size:100%; /*to enable resizing for IE*/ >/*because legend doesn’t inherit in IE */ legend < color:#000; >/* YUI CSS Detection Stamp */ #yui3-css-stamp.cssreset

Читайте также:  Java matcher pattern compile

Сброс стилей normalize.css

Normalize.css — это настраиваемый CSS-файл, который позволяет браузерам отображать все элементы более последовательно и в соответствии с современными стандартами. Его авторы исследовали различия между стилями разных браузеров по-умолчанию, чтобы скорректировать только те стили, которые нуждаются в нормализации.

/*! normalize.css v6.0.0 | MIT License | github.com/necolas/normalize.css */ /* Document ========================================================================== */ /** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in * IE on Windows Phone and in iOS. */ html < line-height: 1.15; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ >/* Sections ========================================================================== */ /** * Add the correct display in IE 9-. */ article, aside, footer, header, nav, section < display: block; >/** * Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Firefox, and Safari. */ h1 < font-size: 2em; margin: 0.67em 0; >/* Grouping content ========================================================================== */ /** * Add the correct display in IE 9-. * 1. Add the correct display in IE. */ figcaption, figure, main < /* 1 */ display: block; >/** * Add the correct margin in IE 8. */ figure < margin: 1em 40px; >/** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr < box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ >/** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ pre < font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ >/* Text-level semantics ========================================================================== */ /** * 1. Remove the gray background on active links in IE 10. * 2. Remove gaps in links underline in iOS 8+ and Safari 8+. */ a < background-color: transparent; /* 1 */ -webkit-text-decoration-skip: objects; /* 2 */ >/** * 1. Remove the bottom border in Chrome 57- and Firefox 39-. * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] < border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ >/** * Prevent the duplicate application of `bolder` by the next rule in Safari 6. */ b, strong < font-weight: inherit; >/** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong < font-weight: bolder; >/** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp < font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ >/** * Add the correct font style in Android 4.3-. */ dfn < font-style: italic; >/** * Add the correct background and color in IE 9-. */ mark < background-color: #ff0; color: #000; >/** * Add the correct font size in all browsers. */ small < font-size: 80%; >/** * Prevent `sub` and `sup` elements from affecting the line height in * all browsers. */ sub, sup < font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; >sub < bottom: -0.25em; >sup < top: -0.5em; >/* Embedded content ========================================================================== */ /** * Add the correct display in IE 9-. */ audio, video < display: inline-block; >/** * Add the correct display in iOS 4-7. */ audio:not([controls]) < display: none; height: 0; >/** * Remove the border on images inside links in IE 10-. */ img < border-style: none; >/** * Hide the overflow in IE. */ svg:not(:root) < overflow: hidden; >/* Forms ========================================================================== */ /** * Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea < margin: 0; >/** * Show the overflow in IE. * 1. Show the overflow in Edge. */ button, input < /* 1 */ overflow: visible; >/** * Remove the inheritance of text transform in Edge, Firefox, and IE. * 1. Remove the inheritance of text transform in Firefox. */ button, select < /* 1 */ text-transform: none; >/** * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` * controls in Android 4. * 2. Correct the inability to style clickable types in iOS and Safari. */ button, html [type=»button»], /* 1 */ [type=»reset»], [type=»submit»] < -webkit-appearance: button; /* 2 */ >/** * Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, [type=»button»]::-moz-focus-inner, [type=»reset»]::-moz-focus-inner, [type=»submit»]::-moz-focus-inner < border-style: none; padding: 0; >/** * Restore the focus styles unset by the previous rule. */ button:-moz-focusring, [type=»button»]:-moz-focusring, [type=»reset»]:-moz-focusring, [type=»submit»]:-moz-focusring < outline: 1px dotted ButtonText; >/** * 1. Correct the text wrapping in Edge and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. * 3. Remove the padding so developers are not caught out when they zero out * `fieldset` elements in all browsers. */ legend < box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ >/** * 1. Add the correct display in IE 9-. * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress < display: inline-block; /* 1 */ vertical-align: baseline; /* 2 */ >/** * Remove the default vertical scrollbar in IE. */ textarea < overflow: auto; >/** * 1. Add the correct box sizing in IE 10-. * 2. Remove the padding in IE 10-. */ [type=»checkbox»], [type=»radio»] < box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ >/** * Correct the cursor style of increment and decrement buttons in Chrome. */ [type=»number»]::-webkit-inner-spin-button, [type=»number»]::-webkit-outer-spin-button < height: auto; >/** * 1. Correct the odd appearance in Chrome and Safari. * 2. Correct the outline style in Safari. */ [type=»search»] < -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ >/** * Remove the inner padding and cancel buttons in Chrome and Safari on macOS. */ [type=»search»]::-webkit-search-cancel-button, [type=»search»]::-webkit-search-decoration < -webkit-appearance: none; >/** * 1. Correct the inability to style clickable types in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button < -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ >/* Interactive ========================================================================== */ /* * Add the correct display in IE 9-. * 1. Add the correct display in Edge, IE, and Firefox. */ details, /* 1 */ menu < display: block; >/* * Add the correct display in all browsers. */ summary < display: list-item; >/* Scripting ========================================================================== */ /** * Add the correct display in IE 9-. */ canvas < display: inline-block; >/** * Add the correct display in IE. */ template < display: none; >/* Hidden ========================================================================== */ /** * Add the correct display in IE 10-. */ [hidden]

Читайте также:  Многослойный персептрон python код

Сброс через универсальный селектор * (звездочка)

На первый взгляд это может показаться самым простым и удачным решением, зачем описывать все HTML элементы и присваивать им значения, когда можно использовать селектор *, ведь его действие распространяется на все HTML.

Но к сожалению, это не хорошая практика. Браузеру очень тяжело (занимает много времени по сравнению с другими процедурами сброса CSS) применять правила к каждому элементу в документе, особенно на больших веб-страницах, а также может разрушить много хороших стилей по умолчанию.

Сброс стилей и WordPress

Если вы хотите использовать один из вышеописанный методов сброса CSS стилей для сайта на WordPress, то это можно сделать двумя способами.

Первый заключается в том, что вам необходимо скопировать код сброса в начало файла style.css вашей темы WordPress (после строчек об авторстве и названии темы, то есть после текста обрамленного дробью и звездочкой /* … */.

Во втором случае код сброса нужно сохранить в отдельный файл, например reset.css, положить рядом с файлом style.css и затем подключить его, добавив нижеследующий код в начало файла style.css:

Если в CSS есть директива @import, то она должна находиться в самом начале таблицы (перед всеми правилами). В противном случае браузер может ее проигнорировать.

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

Как видите, сброс стилей в WordPress ничем особенным не выделяется.

Благодарности

При написании статьи были использованы следующие источники:

Источник

Сброс и нормализация стилей на CSS

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

Давайте посмотрим, какие подходы существуют для борьбы с указанной проблемой.

Сброс стилей через универсальный селектор

Распространенной практикой является отмена отступов по умолчанию. Для этого создают так называемый файл сброса стилей reset.css .

В этом файле сбрасывают все отступы в ноль, используя универсальный селектор:

Затем к HTML странице подключают сначала файл сброса, а затем уже файл с основными CSS стилями:

Создайте файл со сбросом через универсальный селектор. Подключите его к какому-нибудь HTML файлу. Посмотрите на внешний вид страницы по умолчанию, без ваших 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; >

Подключите описанный сброс к какому-нибудь HTML файлу. Посмотрите на внешний вид страницы по умолчанию, без ваших CSS стилей.

Нормализация стилей

Не обязательно сбрасывать все стили в ноль. Существует альтернативный подход, который называется . В этом подходе значения свойств не сбрасываются в ноль, а им указываются определенные значения, чтобы во всех браузерах стили по умолчанию были одинаковыми и удобными. Существуют готовые файлы со стилями нормализации, например, популярная библиотека normalize.css.

Подключите описанную библиотеку к какому-нибудь HTML файлу. Посмотрите на внешний вид страницы по умолчанию, без ваших CSS стилей.

Источник

Оцените статью