CSS, как и HTML -- технология, которую большинство людей изучают не по официальным спецификациям, а просто читая чужой код. И это хорошо тем, что позволяет быстро достичь результата, не разбираясь досконально в каждом аспекте. Однако из-за этого же часто получается, что из кода в код (и из года в год) копируются одни и те же мелкие заблуждения...
Одно из них -- кавычки вокруг названий шрифтов и вокруг URL'ов:
font-family: "Times New Roman", serif;
background-image: url("body.png");
На самом деле их можно совершенно официально опускать:
font-family: Times New Roman, serif;
background-image: url(body.png);
Все то же самое, просто выглядит слегка менее лохмато.
А кавычки реально нужны, если вам надо передать в строке символы-разделители. Например, если название шрифта содержит запятую или URL картинки -- закрывающую скобку. Часто ли вы с такими встречались? :-)
Комментарии: 16
12.11.05 16:35
> Часто ли вы с такими встречались?
А главное, зачем вы их такими сделали?
Плох тот веб-кто-нибудь, создающий картинки с закрывающими скобками в именах. Плох тот веб-кто-нибудь, использующий шрифты с запятыми и всерьёз на них полагающийся.
Хотя, если уж пришлось -- то пришлось.
12.11.05 16:46
Не знаю кому как, но мне с кавычками как-то удобнее (особенное, если имя шрифта содержит пробелы). Лично мне удобнее с кавычками.
P.S. При изучении CSS я преимущественно читал официальную документацию :)
12.11.05 16:46
Шрифты я не так часто пишу в CSS, а вот урлы постоянно — для меня это просто часть „аккуратного” кода — как атрибуты в html…
12.11.05 16:48
PS: Оффтопиком
Not Found
The requested URL /blog/http://softwaremaniacs.org/blog/2005/11/12/quotes-in-css/ was not found on this server.
и в адресной строке
http://softwaremaniacs.org/blog/http%3A%2F%2Fsoftwaremaniacs.org%2Fblog%2F2005%2F11%2F12%2Fquotes-in-css%2F
(это мне выдалось после того, как попытался комментарий отправить…)
12.11.05 20:07
Ну, когда-то и кавычки вокруг значений атрибутов считались необязательными…
12.11.05 20:11
Вообще-то, в HTML они так и остались необязательными.
13.11.05 12:14
Эти кавычки тянутся из тех смутных времён, когда на свете ещё был жив браузер Netscape 4.xx. Вот он без этих кавычек жить не мог, в некоторых случаях приходилось указывать два вариант - без кавычек и с кавычками.
13.11.05 18:18
так что они реально не нужны???
какого черта тогда все эти заморочки в коде с обратным слэшем перед кавычками, я каждый атрибут в HTML в кавычки заключал всегда и вечно боролся потом с ява-скриптами и РНР..
Кстати, меня всегда смущало наличие кавычек с двумя лапками (") и с одной - апострофом (') - в коде соответственно употребляют то одни, то другие, чтобы не путать..
Нет, точно они не нужны??
13.11.05 18:34
В HTML -- не всегда. Если атрибут содержит только лаинские буквы, цифры и знаки "
. - _", то можно писать и без кавычек. Однако это приводит к тому, что часть атрибутов пишется в кавычках (href="/index.htm"-- слеш нельзя без кавычек), а часть -- без (src=image.png). И вот это порождает такую некрасивую кашу, что лучше просто взять за правило кавычки писать всегда. Это, кстати, рекомендация валидатора на W3C.Хотя я, признаться, частенько опускаю кавычки, если очень лениво :-). Типа
<textarea rows=10 cols=80>.13.11.05 20:01
>А главное, зачем вы их такими сделали?
>Плох тот веб-кто-нибудь, создающий картинки с закрывающими скобками в >именах. Плох тот веб-кто-нибудь, использующий шрифты с запятыми и всерьёз >на них полагающийся.
Я всегда знал, что верстальщики Лебедева ...
http://www.artlebedev.ru/;-)/artlebedev_logo.gif
14.11.05 15:05
Кстати, о кавычках.
http://www.livejournal.com/users/zexo/6290.html
14.11.05 19:57
Конец рабочего дня, посему могу ошибаться и тупить. Но разве здесь не сказано, что в некоторых случаях без кавычек не обойтись?
14.11.05 20:28
В некоторых -- не обойтись. Я об этом в конце и не написал, просто не привел весь список исключений. Основная мысль в том, что в подавляющем большинстве случаев таких странных названий, требующих кавычек (начинающихся с пробелов, содержащих несколько пробелов подряд и т.д.), не встречается.
14.11.05 20:58
Привык уже всегда стринги в кавычки заключать, а вот числовые константы пишу так.
=)
Offtop: будет ли статейка про Float в css в учебнике? А то жду-недождусь =(
14.11.05 23:27
Обязательно будет. Уж очень я ее откладываю, но напишу, видимо, к началу следующей недели.
29.05.06 11:17
font-family: Times New Roman, serif; ---
не согласен с этим те м что ежели ты кроссбраузерщик, то кавычки обязательно ставить чтобы не только всё было пучком, но и в других браузерах тоже!!!!