Вопрос

Я пытаюсь установить цвета фона на нескольких разных элементах на HTML -странице, но всякий раз, когда я применяю объявление Doctype, цвета игнорируются. Другие стили кажутся незатронутыми. Я уверен, что я идиот.

Это происходит на IE7, FF3 и Chrome. Со строгим и переходным HTML 4 Doctype. Фоны тела и дивирования затронуты. Минимальный пример ниже. Если вы удалите Doctype Delcaration, она сделана во всей его славе, с Doctype - утомительным черно -белым.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <style>
        body{background-color:FF00FF;}
        .class1{background-color:00FFFF;}
    </style>
</head>
<body>
    <div class="class1">Some Text</div>
</body>
</html>

Кстати - я не использую XHTML, потому что я думаю, что однажды услышал разговор в пабе между гораздо более умными людьми, чем я, который сказал, что вы не должны объявлять XML, если типы MIME не будут правильно установлены на вашем сервере. На моей учетной записи Cheapo хостинг я не могу легко сделать такие вещи легко.

Это было полезно?

Решение

Вы забыли # в значениях цвета.

body {
    background-color: #FF00FF;
}
.class1 {
    background-color: #00FFFF;
}

Другие советы

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

Измените ff00ff на #ff00ff и 00ffff на #00ffff.

#FF00FF также можно записано в короткой форме #F0F, а #00ffff как #0ff.

В CSS вы можете определить цвета в RGB или HEX. Это то, что вы сделали. Но шестигранные цвета написаны как #rrggbb. Анкет Вы пропустили #Анкет Похоже, когда дело доходит до проверки, потому что устанавливается документ, тогда такие «почти корректные» определения цвета не интерпретируются правильно.

Удалить следующую строку

Doctype html public "-// w3c // dtd html 4.01 Transitional // en" "http://www.w3.org

Тогда все будет в порядке, но я не знаю, почему.

Ваша должна использовать всеu003Cstyle type="text/css"> OR even better, don't use inline styling!

Всегда проверяйте свой HTML -код здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top