CSS3 Lineární přechody

01 ze dne 04

Vytváření lineárních přechodů pro prohlížeče pomocí CSS3

Jednoduchý lineární gradient zleva doprava # 999 (tmavě šedý) do #fff (bílý). J Kyrnin

Lineární přechody

Nejběžnější typ gradientu, který uvidíte, je lineární gradient dvou barev. To znamená, že se gradient bude pohybovat v přímce, která se postupně mění od první barvy na druhou podél této čáry. Obrázek na této stránce zobrazuje jednoduchý přechod od # 999 (tmavě šedý) do #fff (bílý) zleva doprava.

Lineární přechody jsou nejjednodušší definovat a mají nejvyšší podporu v prohlížečích. Lineární gradienty CSS3 jsou podporovány v systémech Android 2.3+, Chrome 1+, Firefox 3.6+, Opera 11.1+ a Safari 4+. Aplikace Internet Explorer může přidávat gradienty pomocí filtru a podporuje je zpět do IE 5.5. Není to CSS3, ale je to kompatibilita mezi prohlížeči.

Když definujete přechod, musíte definovat několik různých věcí:

Chcete-li definovat lineární gradienty pomocí CSS3, napište:

lineární gradient ( úhel nebo strana nebo roh , zastávka barev, zastavení barev )

Chcete-li definovat výše uvedený gradient pomocí CSS3, píšete:

lineární gradient (vlevo, # 999999 0%, #ffffff 100%);

A nastavit to jako pozadí DIV píšete:

div {
obrázek na pozadí: lineární gradient (vlevo, # 999999 0%, #ffffff 100%;
}}

Rozšíření prohlížeče pro lineární přechody CSS3

Chcete-li, aby gradient fungoval ve vašem prohlížeči, musíte pro většinu prohlížečů používat rozšíření prohlížeče a filtr pro aplikaci Internet Explorer 9 a nižší (ve skutečnosti 2 filtry). Všechny tyto obsahují stejné prvky pro definování gradientu (s výjimkou, že v IE lze definovat pouze 2barevné přechody).

Filtry Microsoft a rozšíření - Internet Explorer jsou nejnáročnější podporou, protože pro podporu různých verzí prohlížeče potřebujete tři různé řádky. Chcete-li získat výše uvedený šedý až bílý gradient, napište:

/ * IE 5.5-7 * /
filtr: progid: DXImageTransform.Microsoft.gradient (startColorstr = '# 999999', endColorstr = '# ffffff', GradientType = 1);
/ * IE 8-9 * /
-ms-filtr: "progid: DXImageTransform.Microsoft.gradient (startColorstr = '# 999999', endColorstr = '# ffffff', GradientType = 1)";
/ * IE 10 * /
-ms-lineární gradient (vlevo, # 999999 0%, #ffffff 100%);

Mozilla Extension -The -moz- extension funguje jako vlastnost CSS3, jen s příponou -moz-. Chcete-li získat výše uvedený přechod pro Firefox, napište:

-moz-lineární gradient (vlevo, # 999999 0%, #ffffff 100%);

Opera Extension -The -o- rozšíření přidává přechody do Opery 11.1+. Chcete-li získat výše uvedený gradient, napište:

-o-lineární gradient (vlevo, # 999999 0%, #ffffff 100%);

Webkit Extension -The -webkit-extension funguje hodně jako vlastnost CSS3. Chcete-li definovat výše uvedený přechod pro aplikaci Safari 5.1 nebo Chrome 10+, napište:

-webkit-linear-gradient (vlevo, # 999999 0%, #ffffff 100%);

K dispozici je také starší verze rozšíření Webkit, která funguje s Chrome 2+ a Safari 4+. V tom definujete typ přechodu jako hodnotu, nikoli název vlastnosti. Chcete-li dosáhnout šedého na bílý přechod s tímto rozšířením, napište:

-webkit-gradient (lineární, levý horní, pravý horní, barevný stop (0%, # 999999), barevný stop (100%, # ffffff));

Plný kód CSS3 Linear Gradient CSS

Chcete-li získat plnou podporu pro více prohlížečů, abyste získali šedý až bílý gradient, měli byste nejprve zahrnout záložní plnou barvu pro prohlížeče, které nepodporují přechody, a poslední položkou by měla být styl CSS3 pro prohlížeče, které jsou plně kompatibilní. Takže píšete:

pozadí: # 999999;
pozadí: -moz-lineární gradient (vlevo, # 999999 0%, #ffffff 100%);
pozadí: -webkit-gradient (lineární, levé horní, pravé horní, stopy barvy (0%, # 999999), barevný stop (100%, # ffffff));
pozadí: -webkit-linear-gradient (vlevo, # 999999 0%, #ffffff 100%);
pozadí: -o-lineární-gradient (vlevo, # 999999 0%, #ffffff 100%);
pozadí: -ms-lineární gradient (vlevo, # 999999 0%, #ffffff 100%);
filtr: progid: DXImageTransform.Microsoft.gradient (startColorstr = '# 999999', endColorstr = '# ffffff', GradientType = 1);
-ms-filtr: progid: DXImageTransform.Microsoft.gradient (startColorstr = '# 999999', endColorstr = '# ffffff', GradientType = 1);
pozadí: lineární gradient (vlevo, # 999999 0%, #ffffff 100%);

Další stránky v tomto výukovém programu podrobněji vysvětlují části gradientu a poslední stránka vás ukazuje na nástroj, který je vynikajícím způsobem, jak automaticky vytvářet gradienty CSS3.

Viz tento lineární gradient v akci pomocí CSS.

02 z 04

Vytváření diagonálních přechodů - úhel přechodu

Gradient v úhlu 45 stupňů. J Kyrnin

Startovací a zastavovací body určují úhel sklonu. Většina lineárních přechodů je shora dolů nebo zleva doprava. Je však možné vytvořit gradient, který se pohybuje na diagonální čáře. Obraz na této stránce zobrazuje jednoduchý přechod, který se pohybuje v úhlu 45 ° v celém obraze zprava doleva.

Úhel pro definování čáry přechodu

Úhel je čára na imaginárním kruhu ve středu prvku. 0 bodů vzhůru, 90 bodů doprava, 180 bodů dolů a 270 bodů vlevo. Můžete definovat libovolný úhel od 0 do 359 stupňů.

Měli byste si uvědomit, že na čtverečku se úhel 45 stupňů pohybuje z levého horního rohu dole vpravo, ale v obdélníku jsou počáteční a koncové body mírně mimo tvar, jak vidíte na obrázku.

Obecnějším způsobem, jak definovat diagonální přechod, je definovat roh, například vpravo nahoře, a přechod bude přesunut z tohoto rohu do opačného rohu. Počáteční pozici můžete definovat pomocí následujících klíčových slov:

A mohou být kombinovány tak, aby byly konkrétnější, například:

Zde je CSS pro gradient podobný tomu, který byl na obrázku, z červeného na bílý se pohybující z pravého horního rohu dole vlevo:

pozadí: ## 901A1C;
pozadí-obrázek: -moz-lineární gradient (vpravo nahoře, # 901A1C 0%, # FFFFFF 100%);
pozadí-obrázek: -webkit-gradient (lineární, pravý horní, levý dolní, barevný stop (0, # 901A1C), barevný stop (1, #FFFFFF);
pozadí: -webkit-lineární gradient (vpravo nahoře, # 901A1C 0%, #ffffff 100%);
pozadí: -o-lineární-gradient (vpravo nahoře, # 901A1C 0%, #ffffff 100%);
pozadí: -ms-lineární gradient (vpravo nahoře, # 901A1C 0%, #ffffff 100%);
pozadí: lineární gradient (vpravo nahoře, # 901A1C 0%, #ffffff 100%);

Možná jste si všimli, že v tomto příkladu nejsou žádné filtry IE. To proto, že IE umožňuje pouze dva typy filtrů: shora dolů (výchozí) a zleva doprava (s přepínačem GradientType = 1).

Viz tento diagonální lineární gradient v akci pomocí pouze CSS.

03 ze dne 04

Barva se zastaví

Přechod s třemi barevnými zarážkami. J Kyrnin

Pomocí lineárních gradientů CSS3 můžete do gradientu přidat více barev, abyste vytvořili ještě pestřejší efekty. Chcete-li přidat tyto barvy, přidáte další barvy na konci vaší vlastnosti, oddělené čárkami. Měli byste zahrnout, kde by měla barva začínat nebo skončit.

Filtry aplikace Internet Explorer podporují pouze dvě stopy barvy, takže při sestavování gradientu byste měli zahrnout pouze první a druhou barvu, kterou chcete zobrazit.

Zde je CSS pro výše uvedený tříbarevný gradient:

pozadí: #ffffff;
pozadí: -moz-lineární gradient (vlevo, #ffffff 0%, # 901A1C 51%, #ffffff 100%);
pozadí: -webkit-gradient (lineární, levý horní, pravý horní, barevný stop (0%, # ffffff), barva stop (51%, # 901A1C), barevný stop (100%, # ffffff);
pozadí: -webkit-linear-gradient (vlevo, #ffffff 0%, # 901A1C 51%, # ffffff 100%);
pozadí: -o-lineární-gradient (vlevo, #ffffff 0%, # 901A1C 51%, # ffffff 100%);
pozadí: -ms-lineární gradient (vlevo, #ffffff 0%, # 901A1C 51%, # ffffff 100%);
filtr: progid: DXImageTransform.Microsoft.gradient (startColorstr = '# ffffff', endColorstr = '# ffffff', GradientType = 1);
pozadí: lineární gradient (vlevo, #ffffff 0%, # 901A1C 51%, # ffffff 100%);

Podívejte se na tento lineární gradient s použitím tří barevných zastávek pomocí CSS.

04 ze dne 04

Zvyšte přechody budov

Ultimate CSS Gradient Generator. screenshot J Kyrnin zdvořilost ColorZilla

Existují dvě stránky, které vám doporučuji, abyste vám pomohli vytvářet přechody, každý z nich má pro ně výhody a nevýhody, nenašel jsem gradient stavitele, který všechno dělá ještě.

Ultimate CSS Gradient Generator
Tento generátor gradientů je velmi populární, protože provádí podobně jako gradient stavitelé v programech, jako je Photoshop. Také se mi líbí, protože vám dává všechny rozšíření CSS, a to nejen Webkit a Mozilla. Problém s tímto generátorem spočívá v tom, že podporuje pouze horizontální a vertikální přechody. Pokud chcete dělat diagonální přechody, musíte jít na druhý generátor, který doporučuji.

Generátor gradientu CSS3
Tento generátor mi dal trochu déle na pochopení než ten první, ale podporuje změnu směru na úhlopříčku.

Pokud znáte další generátor gradientu CSS, který se vám líbí lépe než tyto, dejte nám prosím vědět .