Закругление уголков в IE и Opera без графических элементов

+15
2.3K
Настолько привык я пользоваться Мозиллой, что с выходом версии 1.7 даже как-то и не посмотрел, как топорно из-за отсутствия закругления уголков смотриться дефолтный шаблон в IE (все версии) и Опере (9.64).
А как посмотрел, начал срочно искать решение. Вот итог:

Во всех версиях IE:

Иллюстрация

В Opera 9.64

Иллюстрация


Итак, для закругления углов в IE:

1.Скачиваем вот отсюда файл и загружаем на сервер в папку с CSS-файлами.
2.В CSS-файле, там где указывается радиус закругления (например, border-radius:10px;) вставляем:
  1. behavior: url(/templates/_default_/css/border-radius.htc);
Всё, в IE заработало!

Для закругления углов в Opera 9.64:

1.Идём вот сюда и генерируем код. Указываем радиус уголков, цвет фона, цвет фона страницы (то есть цвет фона сайта должен быть, к сожалению, однородным).
2.Из окошка "CSS и SVG" копируем длиннющий код и вставляем его в CSS-файл рядом с кодом для IE. Мне сгенерировался следующий код:
  1. background-image: url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxyZWN0IGZpbGw9IiMyNjNiNTYiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiLz48cmVjdCBmaWxsPSIjZmZmZmZmIiByeD0iOCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==);
Всё, и в Опере заработало!

Заодно уж закруглим уголки и в Safari и Chrome:

1. Вставим в CSS-файл всё туда-же следующее:
  1. -webkit-border-radius: 10px;
Честно скажу, не проверял, заработало или нет.

В итоге, стиль для закругления уголков модулей в сайдбаре у меня выглядит так:

  1.  
  2. #main .module{
  3. margin-bottom:10px;
  4. //margin-bottom:20px;
  5. padding:10px 20px 15px 20px;
  6. //padding-top:0px;
  7. background:#FFF;
  8. border-radius:8px;
  9. -moz-border-radius:8px;
  10. -moz-box-shadow:0 2px 0 #000;
  11. -webkit-border-radius:8px;
  12. background-image: url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxyZWN0IGZpbGw9IiMyNjNiNTYiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiLz48cmVjdCBmaWxsPSIjZmZmZmZmIiByeD0iOCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==);
  13. behavior: url(/templates/_default_/css/border-radius.htc);
  14. box-shadow:0 2px 0 #000;
  15. color:#4d4f4f;
  16. }
  17.  
Выявленные недостатки этого способа:
— основной фон сайта должен быть максимально однородным, иначе в Опере не получиться замаскировать кончики углов блока;
— фон самого блока, у которого закругляем уголки, не должен быть картинкой, иначе в Мозилле эта картинка пропадает и фон вообще становиться прозрачным, т.е. в меню придётся отказаться от картинки и установить какой-то цвет, например белый: #ffffff;
— в IE видна 1px граница вокруг всего контура блока, что не всегда может быть красиво.

В общем, как мне кажется, данный способ имеет право на жизнь в ряде случаев.
0
Yuri Yuri 13 лет назад #
Во, а я и не проверял на IE,тоже использую Мозиллу.Посмотрел в Опере 11.00, там все гожа. Спасибо.
0
13 лет назад #
всегда и все сайты в первую очередь проверяют IE так как самый прихотливый браузер и то же время широко используемый
-3
Morgan Morgan 13 лет назад #
мда ... только вот разрабы дизайна и верстки новой версии позабыли проверить своё творение в ИЕ и Опере ! Отсюда и гемор с углами и прочим ... например с теми же менюхами ! Короче говоря не шаблон выпустили а полуфабрикат )))
+7
InstantCMS InstantCMS 13 лет назад #
дефолтный шаблон это просто образец, поэтому и сделан на CSS3 не поддерживаемом устаревшими браузерами
использовать его как основной, имхо, как минимум странно, ибо на выходе получаем 100500-й одинаковый "сайт"
так что запасайтесь прямыми руками, желанием и в путь
+4
InstantCMS InstantCMS 13 лет назад #
Morgan, ваше мнение понятно, флуд я удалил
по поводу верстки дефолтного шаблона у нас есть своя позиция, которую я описал выше
считаю тему закрытой
0
13 лет назад #
мда...данное решение применимо не только к дефолтному шабу,само по себе решение хорошее,респект разрабу
0
Hmelex Hmelex 13 лет назад #
В этом коде: PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxyZWN0IGZpbGw9IiMyNjNiNTYiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiLz48cmVjdCBmaWxsPSIjZmZmZmZmIiByeD0iOCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg== зашифровано это: Подумайте что из этого уже есть в вашем стиле и дадоли оно?...
0
Alexneva Alexneva 13 лет назад #
Сами поняли, что сказали?
0
Hmelex Hmelex 13 лет назад #
Да. base64.ru Дальше сами поймёте.
+1
Alexneva Alexneva 13 лет назад #
Охота Вам тратить своё и чужое время на пустоту
0
Анатолий Анатолий 13 лет назад #
Там вот это закодировано... только вот смысл во всем этом...
0
Анатолий Анатолий 13 лет назад #
svg xmlns="http://www.w3.org/2000/svg">
0
Анатолий Анатолий 13 лет назад #
короче код там нормальный
0
googlebot googlebot 13 лет назад #
!Метод для IE не годится, если на странице используются таб-закладки, генерится куча закругленных блоков для каждой закладки.
0
volchoc volchoc 10 лет назад #
Спасибо автору за работу, но я бы остановился на загрузке картинок.

Еще от автора

Вставка картинок из галереи в каталог, статьи, модули с увеличением по клику
Данное решение позволяет вставлять любое количество изображений в: - текст статьи, новости; - описание позиции универсального каталога; - самостоятель
Вставка картинок из галереи в каталог с увеличением по клику
Моему заказчику потребовалось вставлять дополнительные картинки в каталог оборудования, в описание позиций, и чтобы при клике на картинку она увеличив
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.