Statické filtry dle Microsoftu
O statických filtrech v CSS již byla na Intervalu řeč před nedávnem. V tomto článku bych se ale rád zaměřil na statické filtry použitelné pouze s novou syntaxí dle definice Microsoftu. Tedy ty, které se pravděpodobně nestanou součástí normy CSS3.
I když už o statických filtrech bylo mnoho řečeno v předchozí sérii článků, rád bych stručně zopakoval alespoň pár základních informací. Statické filtry dokáží na webových stránkách vytvořit velice zajímavé vizuální efekty. Můžete s nimi například deformovat obrázky, aniž byste je poškodili, ale aplikovat je lze i na jiné prvky dokumentu. Jejich nespornou výhodou přitom je, že běží na straně klienta a nezatěžují tak spojení se serverem.
Nová syntaxe, definovaná Microsoftem, ale samozřejmě funguje pouze v prohlížečích této firmy, a to navíc jen v nejnovějších verzích jejich prohlížečů. Statické filtry, o kterých bude dnes řeč, vám tedy budou pracovat jenom v prohlížečích MSIE od verze 5.5 a nejsou zahrnuty do žádných standardů! Proto bych vám spíše doporučoval používat syntaxi dle CSS, která vám sice neumožní využít nejnovější filtry, ale do budoucna by měla být zařazena do standardu CSS3 a bude více kompatibilní se staršími prohlížeči.
Syntaxe vlastnosti filter
Než se podíváme na jednotlivé filtry, pokusím se vám přiblížit syntaxi těchto filtrů dle definice Microsoftu. Je velice podobná syntaxi jazyka CSS, ovšem v definici je použito slovo „Microsoft“. Základní syntaxe vydapá následovně: <ELEMENT STYLE = "filter:progid:DXImageTransform.Microsoft.Nazev_statickeho_filtru (filter_param1, filter_param2, filter_param3, ...);">
Aby vše nebylo tak jednoduché, chovají se některé filtry s použitím této syntaxe jinak, než při použití syntaxe dle jazyka CSS. Některé filtry jsou navíc s touto syntaxí nepoužitelné.
Přístup k vlastnosti filtr pomocí skriptů má následující syntaxi: object.style.filter = "progid:DXImageTransform.Microsoft.Nazev_statickeho_filtru (filter_param1, filter_param2, filter_param3, ...)"
Vlastnost filter je s touto definicí použitelná u velké většiny elementů (X)HTML. Pouze u elementů DIV
a SPAN
musí být stejně jako i u staré syntaxe definován atribut height
nebo width
a pozice nastavena na absolute
.
Přehled filtrů
Zde uvádím přehledovou tabulku všech statických filtrů, které jsou použitelné pouze s touto syntaxí, spolu s jejich stručným popisem a použitelnými parametry:
Název filtru | Efekt | Parametry |
---|---|---|
BasicImage | Nahrazuje filtry FlipH, FlipV, Gray, Invert, Xray (použitelné se starou syntaxí). | enabled=boolean, grayscale=boolean, invert=boolean, mask=boolean, maskcolor=integer, mirror=boolean, opacity=floating-point, rotation=integer, xray=boolean |
Compositor | Zobrazí nový prvek se změněnou průhledností určitých oblastí prvku původního. Funguje jako přechod, ale předává pouze statický obsah. | function=integer |
Emboss | Vyryje světlé části prvku do černobílého podkladu. | bias=floating-point, enabled=boolean |
Engrave | Vyryje tmavé části prvku do černobíleho podkladu. Opak filtru Emboss. | bias=floating-point, enabled=boolean |
ICMFilter | Konvertuje(přemění) barevný obsah prvku na základě ICM (Image Color Management) profilu. | colorspace=string, intent=integer |
MaskFilter | Vytvoří ze zadané barvy prvku průsvitnou masku. Identický s filtrem Mask (použitelný se starou syntaxí). | color=#RRGGBB, enabled=boolean |
Matrix | Změní velikost prvku či jej libovolně natočí podle jakékoli osy. | dx=floating-point, dy=floating-point, enabled=boolean, filtertype=string, m11=floating-point, m12=floating-point, m21=floating-point, m22=floating-point, sizingmethod=string |
MotionBlur | Vytvoří iluzi prvku v pohybu. Identický s filtrem Blur(použitelný se starou syntaxí). | add=boolean, direction=integer, enabled=boolean, strength=integer |
Malá ukázka
V krátkosti vám předvedu, co dokáží filtry, o kterých v tomto článku byla řeč. Tento příklad ukazuje možnost použití filtru Matrix, který dokáže prvek otočit opravdu dle libosti:
Ukázka nového filtru Matrix
Zdrojový kód transformace: <div style="width: 500px; height: 300px; filter:progid:DXImageTransform.Microsoft.Matrix(m11=2, m12=1.5, m21=0.8, m22=2);"><img src="matrix.gif" alt="Ukazkovy obrazek - s pouzitim filtru" border="0"><br> Ukázka nového filtru Matrix</div>
Pravý obrázek je kopií prvku, který by vznikl použitím filtru Matrix na levý obrázek s textem v prohlížeči MSIE 6.0. Zde jsem ale využil sejmutého obrázku, aby výsledek mohli zhlédnout i uživatelé jiných prohlížečů.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Regulace digitálních služeb: Co přináší nové nařízení DSA?
20. února 2024 -
Webový správce souborů Filestash – dojmy a recenze
29. července 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024