Почему Mozilla и WebKit предварительно ожидают-moz-и - WebKit к правилам CSS3?

Правила CSS3 приносят много интересных функций.

Возьмите радиус границы, например. В стандарте говорится это, если Вы пишете это правило:

div.rounded-corners {
  border-radius: 5px;
}

Я должен получить радиус границы на 5 пкс.

Но ни Mozilla, ни WebKit не реализуют это. Однако они реализуют то же самое, с теми же параметрами, с другим именем (-moz-border-radius и -webkit-border-radius, соответственно).

Для удовлетворения как можно большего количества браузеров, Вы заканчиваете с этим:

div.rounded-corners {
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

Я вижу два очевидных недостатка:

В то же время я не вижу очевидных преимуществ.

Я полагаю, что люди позади Mozilla и WebKit более умны, чем я. Должны быть некоторые серьезные основания иметь вещи, структурировал этот путь. Это просто, что я не вижу их.

Так, я должен спросить Вас люди: почему это?

6
задан kikito 28 May 2010 в 17:01
поделиться

3 ответа

-moz-border-radius описывает семантику Mozilla. Если CSS3 будет опубликован с другой семантикой, тогда Mozilla всегда сможет реализовать border-radius , используя ту семантику, и они не нарушат чей-либо веб-сайт.

Между тем, если они просто использовали border-radius напрямую, то, если CSS3 будет опубликован с другой семантикой, Mozilla придется выбирать между взломом сайтов людей или постоянной поддержкой нестандартного CSS.

6
ответ дан 8 December 2019 в 18:33
поделиться

Они делают это, потому что не полностью поддерживаются. Это очень похоже на бета-версию этого кода. В конце концов они добавят поддержку border-radius.

Это более очевидно, когда вы смотрите на линейные градиенты.

background-image: -moz-linear-gradient(100% 100% 90deg, #2F2727, #1a82f7);
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#1a82f7), to(#2F2727));

Обратите внимание, что они используют разный синтаксис. Когда они наконец придут к соглашению о стандарте, оба добавят поддержку linear-gradient и используют правильный синтаксис.

3
ответ дан 8 December 2019 в 18:33
поделиться

Простой. Собственные варианты -moz и -webkit были там до того, как border-radius был записан в рекомендацию CSS3. У них были свои реализации, но они не знали, будут ли они соответствовать окончательной рекомендации W3C. Таким образом, они не использовали теперь официальное название и в тот момент, чтобы не сломать вещи позже.

2
ответ дан 8 December 2019 в 18:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: