Чистые CSS закругленные углы в IE6-8 (JQuery Accepted) - PullRequest
4 голосов
/ 28 августа 2010

Существует множество плагинов JQuery, которые дают закругленные углы браузерам, которые не поддерживают CSS3.Они либо не работают, либо имеют некрасивый эффект, когда вы видите, что он не стилизован, а затем JS включается и, наконец, делает их округленными.бесшовное или почти бесшовное решение.

Лучшее совпадение, с которым я когда-либо сталкивался, если использовать файлы .htc с www.css3pie.com.Эта задержка все еще существует (не уверен, что ее можно решить).

css3pie сжат около 26 тыс., Владелец заявил, что, если у вас есть JQuery, могут быть сценарии, которых будет меньше.(В любом случае я планирую использовать JQuery повсеместно).

В идеале мне бы хотелось, чтобы он поддерживал градиенты, радиус границы и тень блока.В настоящее время css3pie делает все это так, как мне нужно, за исключением box-shadowing.Это портит, если фон прозрачен, как указано здесь: http://github.com/lojjic/PIE/issues#issue/12

Я готов принять невозможность любой из этих функций в IE6.

Я думаю, может быть, я просто не могу иметьсвой торт и есть его тоже.Сейчас я буду придерживаться css3pie.com и мириться с раздражающей задержкой, и не допускать появления тени в IE.Ничего страшного, потому что IE9 должен исправить это - скрестив пальцы -

Ответы [ 6 ]

6 голосов
/ 28 августа 2010

Библиотека CSS3 PIE обрабатывает множество вещей для IE6 / 7/8, включая:

  • Границы радиуса (закругленный угол)
  • Box Shadow
  • Граница
  • Градиентный фон

Очень удобно.

2 голосов
/ 28 августа 2010

Если вы должны поддерживать закругленные углы для IE6, то, возможно, вы могли бы взглянуть на Изогнутый угол.

Я бы назвал behavior:url(border-radius.htc) черезусловный файл IE6 CSS.

Лично я бы вообще игнорировал изогнутые углы в IE6.

0 голосов
/ 28 августа 2010

если вы ищете очень гладкий круглый угол и действительны во всех браузерах, то есть простой javascript, называемый curvycorners

просто нужно включить файл js в

в вашем HTML использовать класс = округлено в любом месте.

http://www.curvycorners.net/instructions/

0 голосов
/ 28 августа 2010

Думаю, вам может показаться интересным этот тесно связанный вопрос:

Создание закругленных углов с использованием CSS

Также тесно связано, но приглашение большего количества ответов, связанных с JQuery,:

https://stackoverflow.com/questions/521432/best-jquery-rounded-corners-script

0 голосов
/ 28 августа 2010

IMO, вы не должны заботиться о таких неважных вещах, как закругленные углы или тени под IE. Время, когда страница должна была выглядеть одинаково при любом возможном браузере, наконец-то прошло. Вы, как разработчик, несете ответственность за правильное отображение каркаса страницы, но eye-candy - это работа по просмотру. Если некоторые браузеры не поддерживают некоторые элементы CSS3 - это проблема его пользователей. Они используют дерьмовый браузер - они видят дрянной сайт (ну ... может быть, не дрянной, но немного страшнее).

Таким образом, я, как пользователь Opera, не буду видеть симпатичные градиенты на кнопках на YouTube, в то время как пользователи Firefox увидят. Но я все еще вижу красивую страницу!

Другими словами: не волнуйтесь о таких деталях в IE. Не волнуйтесь о таких деталях в Opera / Firefox / Safari / Chrome. Если некоторые из них что-то не поддерживают - оставьте это, если для кросс-браузерного решения требуется больше, чем двойная / тройная запись CSS:

box-shadow: 0 0 5px #333;
-moz-box-shadow: 0 0 5px #333;
-webkit-box-shadow: 0 0 5px #333;
0 голосов
/ 28 августа 2010

Использовать jquery плагин с закругленными углами

http://jquery.malsup.com/corner/

И запускать плагин при любых возможных событиях, чтобы обеспечить его загрузку

<script>
   $(this).corner(); //This will trigger the function as soon as this line loads
   $(document).ready(function() { $(this).corner(); }); //not necessary
   $(window).load(function() { $(this).corner(); });//not necessary
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...