Фон rgba с фильтром IE альтернатива: IE9 отображает и то, и другое!

Я пытаюсь сделать фон div прозрачным, используя смесь CSS3 rgba () и свойства Microsoft filter , например это:

div {
    width: 200px;
    height: 200px;
    /* blue, 50% alpha */
    background: rgba(0,0,255,0.5);
    /* red, 50% alpha */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#7FFF0000,endColorstr=#7FFF0000);
}

Как и ожидалось, браузеры, поддерживающие rgba () , будут отображать div как синий, тогда как IE 6-8 отобразит его как красный.

IE9, по-видимому, может обрабатывать оба (ранее я думал фильтр поддержка была удалена), и в результате получился div фиолетовый . Есть ли способ сделать так, чтобы IE9 поддерживал одно из этих свойств, но не другое? rgba () , очевидно, будет предпочтительнее.

Примечание. Я использую IETester для запуска этих тестов. Если правильная сборка IE9 этого не позволяет, дайте мне знать.

15
задан Liam Newmarch 28 June 2011 в 12:01
поделиться