2011-01-21 2 views
1

Я пытаюсь использовать Jquery.corner(), чтобы закруглить углы моего div.JQuery.corner() прозрачный фон в IE

Однако в IE угол фона является цветом div родителя (цвет кузова: # C70036;). Я использую фоновое изображение, так как вы можете видеть в желтых прямоугольниках (here) работает неправильно.

После поиска на некоторое время я нашел это:

$("myDiv").corner("cc:#fff round 20px"); 

Но фон не только один цвет, так что я не могу использовать «куб.см: # 000000». Вы знаете какой-либо способ сделать угол фона прозрачным?

ответ

4

У вас всегда будет эта проблема, если вы используете эти инструменты jQuery для имитации закругленных углов в IE. Проблема в том, что они работают путем рисования дополнительных элементов в верхней части угла, поэтому фоны всегда являются проблемой (есть и другие проблемы, которые возникают, например, закругленные углы, не имеющие гладких сглаженных краев и т. Д., Но фоны вероятно, является наихудшей проблемой для партии).

Но есть решение - есть IE-хак под названием CSS3Pie, который использует другую технику и производит подлинные закругленные углы, которые не имеют этой проблемы.

Другая хорошая вещь о CSS3Pie заключается в том, что он пытается сделать IE использующим стандартный стиль CSS border-radius, что означает, что вы можете писать свои таблицы стилей, используя современный стандарт, который работает во всех браузерах.

Кроме того, на вашей странице не нужен какой-либо код Javascript/JQuery (CSS3Pie сам по себе основан на Javascript, но он абстрагируется от вашей страницы, поэтому вам не нужно писать одну строку кода). И поскольку это зависающий от IE хак, он никогда не загружается никаким другим браузером; все остальные браузеры будут использовать стандарт CSS и получить бесплатные закругленные углы; только IE должен беспокоиться о запуске дополнительного кода, чтобы он работал.

Наконец, CSS3Pie делает IE поддержкой нескольких других современных стилей CSS3, таких как тени и градиенты, которые были бы очень сложными для достижения в противном случае.

+0

Thx, что было действительно полезно :) – Remo

+0

Да, я бы посоветовал [css3pie] (http://css3pie.com/), он работает очень хорошо. В качестве предупреждения у меня были проблемы с .fadeIn() и .fadeOut() с использованием jQuery (т. Е. 7-8). – Eruant

+0

Если родительский тег тега html CSSPIEd имеет фоновое изображение, то это не сработает. Я пробовал это раньше. – marknt15

Смежные вопросы