Подтвердить что ты не робот

CSS Reset, стили по умолчанию для общих элементов

После применения CSS reset, я хочу вернуться к "нормальному" поведению для элементов html, таких как: p, h1..h6, strong, ul и li.

Теперь, когда я говорю "нормальный", я имею в виду, например, элемент p добавляет интервал или результат возврата каретки как результат при использовании или размер шрифта и смелость для тега h1 вместе с интервалом.

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

4b9b3361

Ответ 1

YUI предоставляет базовый CSS файл, который даст согласованные стили во всех браузерах класса A. Они также предоставляют файл CSS reset, так что вы также можете использовать его, но вы говорите, что у вас уже есть reset CSS. Для получения дополнительной информации перейдите на веб-сайт YUI. Это то, что я использовал, и он работает очень хорошо.

Ответ 2

Одно из правил применения стилей CSS - "последний в выигрыше". Это означает, что если ваши стили CSS reset устанавливают элементы на margin:0; padding:0, вы можете затем переопределить эти правила, объявив после этого ваши желаемые значения для тех же элементов.

Вы можете сделать это в том же файле (YUI предлагает однострочный reset, поэтому я иногда включаю его как первую строку в свой CSS файл) или в отдельный файл, который появляется после reset CSS <link/>.

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

Теперь вы можете посмотреть в Blueprint CSS или другие рамки сетки. Эти grid-схемы почти всегда сначала стили w70 > ни к чему, а затем создают типографию для общих элементов и т.д. Это может сэкономить ваше время и усилия.

Ответ 3

Вы имеете в виду:

* {
    padding: 0;
    margin: 0;
}

h1, h2, h3, h4, h5, h6, p, blockquote, form, label, ul, ol, dl, fieldset, address {
    margin-bottom: 1em;
}

?

Собственно, извините, я неправильно прочитал ваш вопрос, вы за чем-то похожим на Эрика Мейера всего reset @http://meyerweb.com/eric/tools/css/reset/

Ответ 4

Вместо того, чтобы использовать общий CSS reset, подумайте об использовании чего-то вроде Normalize, который "сохраняет полезные значения по умолчанию".

Чтобы узнать, что ваш браузер считает по умолчанию, откройте обычный HTML файл со списками и просмотрите списки с помощью отладчика CSS, например Firebug и найдите вкладку Computed.

Ответ 5

Ознакомьтесь с YUI (соглашения с пользовательским интерфейсом с открытым исходным кодом Yahoo).

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

Я рекомендую вам посмотреть 40-минутную беседу, чтобы ускориться.

Вот короткий фрагмент файла base.css:

ol li {
    /*giving OL LIs generated numbers*/
    list-style: decimal outside;    
}
ul li {
    /*giving UL LIs generated disc markers*/
    list-style: disc outside;
}
dl dd {
    /*giving UL LIs generated numbers*/
    margin-left:1em;
}
th,td {
    /*borders and padding to make the table readable*/
    border:1px solid #000;
    padding:.5em;
}
th {
    /*distinguishing table headers from data cells*/
    font-weight:bold;
    text-align:center;
}

Загрузите полные таблицы стилей ниже или прочитайте полную документацию.

Yahoo reset css | База Yahoo (отмена) reset css

Ответ 6

Я лично большой поклонник BlueprintCSS. Он сбрасывает стили в браузерах и предоставляет некоторые действительно удобные значения по умолчанию (это то, что вы хотите в 90% случаев). Он также предоставляет сетку компоновки, но вам не нужно использовать ее, если она вам не нужна.

Ответ 7

Если вы хотите увидеть настройки css по умолчанию для firefox, найдите файл с именем "html.css" в дистрибутиве (в этом же каталоге должны быть некоторые другие полезные файлы css). Вы можете выбрать нужные правила и применить их после reset.

Кроме того, в стандарте CSS2 есть образец таблицы стилей для html 4.

Ответ 9

"После применения CSS reset, я хочу вернуться к" нормальному "поведению для элементов html..."

Если вы применили reset, вам нужно было бы добавить правила для того, что, по вашему мнению, является нормальным поведением. Поскольку нормальное поведение варьируется от браузера к браузеру, этот вопрос является чем-то нелогичным. Мне нравится @da5id answer - используйте один из многих доступных сбрасываний и настройте его в соответствии с вашими потребностями.

Ответ 10

Как только вы присвоили значение CSS-свойству элемента, нет никакого способа вернуть к нему "нормальное" значение, предполагая, что "нормальный" означает "по умолчанию для браузера", как это здесь имеет смысл. Таким образом, единственный способ иметь, скажем, элемент h1, по умолчанию для браузера font-size - не устанавливать свойство для него в вашем коде CSS.

Таким образом, чтобы исключить некоторые свойства и элементы из CSS reset, вам нужно использовать более ограниченный CSS reset. Например, вы не должны использовать * { font-size: 100% }, но замените * на список селекторов, например input, textarea { font-size: 100% } (список может быть довольно длинным, но, например, значения по умолчанию для браузера для font-size отличаются от 100% только для нескольких элементов).

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

В частности, вы можете использовать раздел Rendering в HTML5 CR. Он описывает "ожидаемый рендеринг" - не требование, хотя разработчики браузеров могут принять решение заявить о соответствии им, если они того пожелают, и, как правило, это, вероятно, сохранит реализаций, которые будут схожими в этом отношении. Например, для h1 ожидаемые настройки (собраны здесь в одно правило - в HTML5 CR они разбросаны):

h1 {
unicode-bidi: isolate;
display: block;
margin-top: 0.67em;
margin-bottom: 0.67em;
font-size: 2.00em;
font-weight: bold;
}

(Существуют дополнительные контекстуальные правила. Например, предполагается, что вложенность h1 внутри section влияет на настройки.)

Ответ 11

Я не сброшу все элементы по умолчанию, потому что стили по умолчанию зависят от браузера, поэтому они зависят от браузера и браузера. Вместо того, чтобы использовать что-то вроде ul, ol { list-style: none; }, я добавляю класс CSS, например r или reset, и затем указываю, что если это ul, у которого есть класс r, reset он или иначе пожалуйста, оставьте его незатронутым.

Кстати, вам нужно добавить class="reset" (например) ко всем этим элементам, что является дополнительной работой и кодом, однако у вас в конце будут все ваши стили по умолчанию, не затронутые в конце!