Несколько вопросов о CSS3 / @ Импорт и проверка CSS2.1 - PullRequest
1 голос
/ 18 апреля 2011

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

Я хочу, чтобы мои сайты прошли полную проверку, прежде чем передать их клиенту.

У меня есть две проблемы (мне было интересно, как другие делают полностью корректный веб-сайт), используя: http://validator.w3.org/check

Я использую некоторые свойства CSS3 (переходы, тени-рамки, радиус-границы и т. Д.), Которые делают сайт не прошедшим валидацию, так как валидатор проверяет спецификацию CSS 2.1 (я полагаю). Есть ли какие-то методы, которые вы, ребята, используете для передачи валидатора с этими свойствами в CSS? Вы разделяете их и заключаете в условные комментарии?

Второй - это метод @import CSS. В моем заголовке у меня есть одна таблица стилей с именем main.css. В этой таблице стилей у меня есть что-то вроде этого:

/*site structure*/
/*@import url("grid_system_960.css");*/

/*default style rules
@import url("layout.css"); */

/*navigation.css
@import url("navigation.css");*/

Я просто делаю так, чтобы сохранить модульность и чистоту CSS, но @import также не прошел валидатор.

Кто-нибудь получил какие-либо предложения, которые я мог бы принять, чтобы улучшить мою структуру / метод?

1 Ответ

8 голосов
/ 18 апреля 2011

Я хочу, чтобы мои сайты прошли полную проверку, прежде чем передать их клиенту.

Стоп. Валидация - это инструмент, а не соревнование. Если вы понимаете, почему код не работает, и последствия того, как вы отклоняетесь от спецификации, тогда это не проблема.

как валидатор проверяет с использованием спецификации CSS 2.1

The validator will use whichever profile you specify

Вторым является метод @import CSS.

Не используйте это в рабочем коде. Это увеличивает количество HTTP-запросов и замедляет работу сайта. Объедините и уменьшите CSS перед публикацией.

@ import также не прошел валидатор

Тогда вы используете его неправильно (возможно, из-за того, что не сделали его первым в таблице стилей). «В CSS 2.1 любые правила @ import должны предшествовать всем остальным правилам (кроме правила @charset, если оно есть).»

...