Using Internet Explorer filters and ClearType -
i've read @ length issues ie disabling cleartype when using filters, , i'm hoping conclusions wrong. seems impossible turn cleartype on after applying filter (e.g. shadow or alpha). so?
with every other browser supporting text-shadow
i'd able use it, falling on ie's shadow
or dropshadow
filter when necessary. applying filter text makes terrible.
is there way enable both cleartype , filters in internet explorer?
some sources:
is there way enable both cleartype , filters in internet explorer?
no. filters came before cleartype support in internet explorer , never designed work partial transparency. issue in blog post linked never fixed and, css3 improvements in latest browsers, future's bleak filters.
there tricks can use approximate text-shadow
in internet explorer, however. varying approaches involve positioning copy of element directly below, containing same text applying blur or shadow filters.
double-markup method, works ie 6-9
assuming you're applying shadow in moderation, example section title or photo caption, can duplicate text 2 separate elements , position 1 @ back, blurring filter:
<h1><span class=".shadow">fear shadow!</span><span>fear shadow</span></h1>
body { background-color: lightgreen; } h1 { color: white; font-family: helvetica,arial,sans-serif; font-weight: bold; font-size: 1.2em; text-shadow: #333 2px 2px 3px; padding-bottom:2px; } .shadow { display: none; } /* non-ie browsers */ .ie > h1 > span { position: absolute; color: white; } .ie > h1 > span.shadow { display: inline-block; zoom: 1; color: #333; filter: progid:dximagetransform.microsoft.blur(pixelradius=2); }
working example: http://jsfiddle.net/pdzxb/
for ie6, need omit direct-descendant selector >
. doesn't great in ie 6, though.
easy method — using :before
, attr()
by far easiest approach 1 requires no javascript, works in ie 8 , ie 9 because relies on :before
pseudo-class , css attr()
function. require targeting css towards specific versions of ie, though.
h1 { color: white; font-family: helvetica,arial,sans-serif; font-weight: bold; font-size: 1.2em; text-shadow: #333 2px 2px 3px; padding-bottom:2px; } .ie8and9 > h1 { zoom: 1; /* make element have layout */ color: #333; filter: progid:dximagetransform.microsoft.blur(pixelradius=2); } .ie8and9 > h1:before { position: absolute; color: white; content: attr(data-innertext); }
working example: http://jsfiddle.net/zfyga/
a step-by-step guide method located @ http://www.useragentman.com/blog/2011/04/23/css-blurred-text-shadow-in-ie-part-i/.
Comments
Post a Comment