2009-02-09 4 views
0

В сотовом я назвать "мою страницу на верхнем уровне - как это:Должен ли я называть свою страницу «для целей пользовательского CSS?

<div class="page_products"> 

для того, чтобы написать CSS специфичные для этой страницы, как это:

.page_products h3 { 
    font-color: red; 
} 

Примечания: Это полностью случайный и, вероятно, не полезный стиль. H3 - это первое, что пришло мне в голову. Я просто пытаюсь описать эту практику.

Я видел несколько мест, где описывается такая практика, в том числе один answer to one of my other posts, и я вроде как думаю, что это ужасно. Я бы предпочел переопределить тег <style> в верхней части моей страницы или создать второй .css-файл (менее вероятно). Но тогда, если я посмотрю на это по-другому, это очень привлекательно, и я соблазн использовать его.

Что другие думают об этой практике. Мне это кажется неудовлетворительным. Каковы преимущества или подводные камни?

Дополнительная информация: Возможно, я также попытаюсь написать .css-файл, специально предназначенный для «iPhone», и немного беспокоился о том, что несколько файлов css для этого могут стать действительно неуклюжими для управления.

ответ

11

Вместо того, чтобы иметь кучу одноразовых файлов CSS с 1 или 2 правилами в каждом из них, я нашел полезным присвоить body идентификатор или атрибут класса, аналогичный вашему примеру. В конечном итоге, прагматизм должен победить. Простота означает разные вещи в разных масштабах - если у вас есть массовые изменения CSS на странице, становится намного проще поддерживать разные файлы CSS и заменять операторы include. Но с помощью нескольких правил, может быть, только нескольких страниц кромки, легче включить все правила в свою основную таблицу стилей.

+0

это те, безусловно, выигрыш до сих пор;) –

3

Я вообще предпочитаю указывать дополнительные файлы CSS. Однако это приводит к дополнительному HTTP-запросу и замедляет время загрузки. <style> теги в html-заголовке остаются без изменений в долгосрочной перспективе.

Если у вас есть сценарии, в которых вы переопределяете стили для нескольких элементов для определенных страниц, тогда этот подход является разумным.

Лучше использовать тело вместо div для применения класса или идентификатора. Это чище, и его легче обнаружить в будущем.

+0

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

+0

Если вы эффективно используете HTTP-кеширование, это приводит к ОДНОМ дополнительному запросу на весь сеанс просмотра, и вам не нужно нажимать встроенные стили (которые быстро складываются, btw) и с каждой страницей. – Piskvor

1

Дать имена элементов делает вещи приятными и легкими, когда люди хотят возиться с вашим рендерингом, используя такие инструменты, как Greasemonkey. Они могут только «исправить» теги «page_products».

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

+0

интересный. так что, если я * не хочу, чтобы люди возились с моим сайтом в greasemonkey ;-) –

+0

Почему так? – mlambie

2

Когда-нибудь у вас просто нет выбора, и у вас есть конкретный css для определенных страниц .

Обычно я добавляю уникальный идентификатор в тело каждой страницы - тогда нет необходимости в дополнительном div.

<body id="page-x"> 
    <h3>Page Title</h3> 
</body> 

, а затем, если необходимо, добавить как можно меньше, чтобы основной таблицы стилей (для предотвращения дополнительных запросов HTTP)

#page-x h3 { 
    custom css... 
} 
Смежные вопросы