|
0 Всего найдено: 1
kil89
Сообщение
27/09/2010 17:51
Копия темы
0
Круглые и прозрачные. Проблема border-radius.htc и opacity Думаю, многие из вас при реализации блоков с закругленными углами для ослов использовали фирменное решение от Microsoft (border-radius.htc). Ведь так? И замечательно! Но вот стоило мне добавить этим блокам ещё и прозрачности opacity, и радости моей пришёл конец. Нет, конечно это и не первый и не последний раз, и, казалось, нужно бы уже привыкнуть... Непредсказуемость. Вот за что мы их и любим! Может я плохо гуглил, но решения этому несчастью так и не нашёл. Максимум это модификация, убирающая какой-то там алерт. Вобщем плохо всё. Пришлось лезть и разбираться во всей этой каше самостоятельно. Благо, там не так сложно всё оказалось. Поэтому публикую мой рецепт для вас. Попытаюсь объяснить в двух словах, что происходит внутри этого файла. Оказывается, что ослы поддерживают так называемый язык векторной разметки VML ( Вот здесь-то и выясняется, что при при инициализации заливки для блока, мягкотелые не учли его прозрачность. Ну мы простим им эту оплошность и доделаем всё сами. Нам нужно будет вставить всего 2 строчки: 1. var fillOpacity = this.currentStyle.opacity; запоминаем значение прозрачности объекта. Я вставил это после 45 строчки. 2. fill.opacity = fillOpacity; и присваиваем это значение для VML-объекта. 97 строчка. Всё. Теперь блоки отображаются, как надо. Победа в этом сражении за нами |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |