#css
#css
Вопрос:
Я только что заметил кое-что с IE8. У меня есть фотография, которая является ссылкой, и над изображением есть частично прозрачный div (только нижняя треть или около того), который использует этот CSS-код:
background: rgba(0, 0, 0, 0.7); /* handles the proper browsers */
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#b2000000,endColorstr=#b2000000); /* for IE */
К сожалению, при наведении курсора мыши на div курсор является указателем, и щелчок приводит к ссылке img. Если я избавлюсь от этого фильтра и просто сделаю фон # 000, он будет работать нормально, и наложение предотвратит любой щелчок. Такого поведения не происходит в Firefox или Chrome.
Как я могу обойти эту ошибку?
РЕДАКТИРОВАТЬ: Пожалуйста, обратите внимание, это не то же самое, что весь div с его непрозрачностью, установленной на 0.7! Это привело бы к тому, что текст внутри него (который у меня есть) также исчез. Это строго альфа-цвет фона.
Подправьте здесь:http://jsfiddle.net/csaltyj/dxTdq /
Комментарии:
1. Немного сложно понять, что происходит и что вы ищете. У вас есть ссылка, на которую мы можем посмотреть?
2. Конфиденциально. Давайте я соберу скрипку…
Ответ №1:
У меня была такая же проблема. Вы должны использовать непрозрачный цвет в стиле и применить прозрачность с помощью jquery
или
сделайте полупрозрачный файл .png в качестве фона для div
Комментарии:
1. Как вы можете установить непрозрачность фона с помощью jQuery? Помните, что мы говорим о непрозрачности фона, а не просто о старой непрозрачности. $(‘#mydiv’).css(‘opacity’, 0.7) не достигнет желаемого эффекта.
2. Хорошо, я могу придумать еще один способ: создать div (#backdrop) внутри контейнера div и установить для #backdrop значение непрозрачности черного фона 70% с помощью jQuery и поместить другой полностью прозрачный div поверх того, который содержит текст. Таким образом, фон становится полупрозрачным, не влияя на непрозрачность текста.
3. Я выбрал PNG. 🙂 Не стоит тратить время на кодирование только для того, чтобы получить полупрозрачный фон!