HTTP-заголовок Default-Style
Если бы я сейчас на ночь глядя не решил почитать по диагонали спецификацию тега LINK, то так, наверное, никогда в жизни бы и не узнал о существовании
Если у вас подключены несколько таблиц стилей к одному документу, вы можете дать им имя, прописав его в атрибуте «title», и выбрать его через
<head>
<style type="text/css" title="right">
body {
background: blue;
}
</style>
<style type="text/css" title="wrong">
body {
background: red;
}
</style>
<meta http-equiv="Default-Style" content="right" />
</head>Работать должен только стиль с именем «right» (можно дать и русские имена). Слово должен я выделил, потому что это стандарт. Жизнь, как всегда, богаче.
Я проверил на браузерах, которые у меня есть, в «Опере» 11 RC3 и Internet Explorer 9 beta это не работает, работает в Firefox 3.6.12, Safari 5 и Chrome 9.0.597.19, можете проверить свой браузер, фон должен быть синим.
Можно из этого сделать своеобразный
Добавлено: во встроенном браузере на моём «Нексусе» работает («Андроид» 2.2.1), в Firefox 2.0 и Chrome 5.0.375.125 — тоже.
Добавлено ещё позже: в комментарях меня поправляет Денис Попов: по стандарту если заданы несколько тегов LINK, задающих стили с title, то выбирается первый («Опера» и «IE» нарушают стандарт уже в этом месте, я проверил), если не задан специальный
Прочитайте комментарий, там есть немаловажные подробности.
Комментарии 8
Заголовок
Далее, допустим, мы исправили эту оплошность и вместо двух у нас теперь два :
Что мы имеем в этом варианте? Согласно 14.3.2, link с rel=stylesheet и с заданным title указывает на preferred style sheet. Preferred style sheet следует указывать один; если их указано два, то the first one takes precedence, то есть blue.
Но если теперь добавить , то действует следующее правило: Preferred style sheets specified with META or HTTP headers have precedence over those specified with the LINK element. Таким образом, в этом варианте фон будет красным:
Но правильнее было бы не прибегать к
— rel=stylesheet без title — persistent, применяется всегда;
— rel=stylesheet с title — preferred, применяется по умолчанию в дополнение к persistent;
— rel='alternate stylesheet' — alternate, по умолчанию не применяется, а будучи выбранным, применяется взамен preferred и в дополнение к persistent.
Кроме того, если указать у нескольких линков одинаковые title, эти стили образуют группу и будут применяться всегда вместе.
Пример:
http://besisland.name/trash/css-preferred- … ent/1.html
http://besisland.name/trash/css-preferred- … ent/2.html
http://besisland.name/trash/css-preferred- … ent/3.html
http://besisland.name/trash/css-preferred- … ent/4.html
http://besisland.name/trash/css-preferred- … ent/5.html
Комментарий для besisland.name:
Это не совсем так: http://www.w3.org/TR/html-markup/meta.http … style.html
Комментарий для besisland.name:
А вот это важно, спасибо! Я не разобрался до конца.
Главное меню → «Вид» → «Стиль страницы».
И Opera давно позволяет; правда, и там, и там выбор стиля запрятан довольно глубоко в интерфейс (хотя в Firefox всё же глубже), а надо бы