Имеет ли значение порядок стилей CSS?

#css #layout #html

#css #макет #HTML

Вопрос:

Я новичок в этой области, и я написал стиль div, который не работал должным образом для firefox 4, opera 11.1 и для ie 8.0, но работал для chrome 11. Код, который был стилем для div, был следующим, только в другом порядке

 #info_text
{
    background:#fdf6cc;
    width: 650px;
    margin-left:1px;
    padding-left: 30px;
    padding-right: 263;
    min-height: 90px;
}
  

После изменения его таким образом, он работал во всех браузерах, за исключением Internet Explorer 8.0.

Могу ли я что-то сделать, чтобы это заработало, или это проблема браузера? Соответствует ли это порядку в данном случае?

Комментарии:

1. когда вы говорите, что это не работает, что вы имеете в виду? Есть ли конкретное свойство, которое не работает, или вы имеете в виду, что ни одно из них не работает?

2. Он отображает цвет фона разной ширины. Opera и Firefox стали шире, но ie 8 по-прежнему рисует уже.

3. вы пробовали добавлять px, как указал Джим?

4. Да, но для ie8 он все еще более узкий … : (

5. Проблема в том, что для ie8 padding-right: 263px; дополняет также цвет фона, за исключением текста, который находится в div.

Ответ №1:

В данном случае порядок не имеет значения.

Вам не хватает единиц для padding-right свойства. Запуск вашего кода через средство проверки будет отмечать ошибки, подобные этой.

Комментарии:

1. 1 Хорошо замечено, вам нужно ‘px’ в вашем свойстве padding-right

2. Я изменил, но это не помогает. Возможно, это могло бы быть полезно, когда я не менял порядок.

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

Ответ №2:

Добро пожаловать в мир веб-разработки! Все браузеры интерпретируют CSS по-разному, особенно старые версии IE (попробуйте вышеуказанное в IE6, чтобы немного развлечься!)

Чтобы точно понять, с какими проблемами вы столкнулись, нам нужно увидеть рабочую веб-страницу с описанным выше.

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

Комментарии:

1. Я надеюсь, что новейшие версии всех браузеров стандартизированы. Я читал, что верстка сайта с помощью CSS обеспечивает кроссбраузерную функцию при выполнении этого с помощью таблиц. Но это все еще не полностью кроссбраузерно, не так ли?

Ответ №3:

попробуйте открыть «параметры разработчика» в разделе «Инструменты» в ie, если есть более конкретный класс, возможно, он что-то перезаписывает, или если что-то отформатировано плохо, IE может исключить все это вместе. Другой вариант — «firebug lite», firebug — очень полезный инструмент для начала работы с css, javascript и структурой страницы. Без ссылки на страницу, на которой у вас возникла проблема, очень сложно определить причину, я скопировал ваш css и попробовал его сам, но получил ожидаемый результат во всех браузерах

Комментарии:

1. В инструментах разработчика ie8 я вижу следующее: когда я отключаю ширину 650 пикселей, тогда ширина div становится слева направо от границы браузера, в противном случае это 650 пикселей, но цвет фона по-прежнему не присутствует в области заполнения — справа 263 пикселей;. Цвет должен присутствовать в области правого отступа, а текст должен быть дополнен. Только в ie8 этот стиль дополняет также цвет фона.

2. Как я уже говорил, вам нужно разместить страницу онлайн, которую мы можем проверить, я протестировал ваше объявление div и css в ie8 с ожидаемым результатом, не уверен, почему у вас это не работает, если не происходит что-то еще