CSS3 - transform

Transkrypt

CSS3 - transform
CSS3 - transform-origin
Dodał pwimmer
wtorek, 22 luty 2011 11:37
div.rotatecenter { width:100px; height:50px; background-color: olive; } div.rotatetopleft { width:100px;
height:50px; background-color: olive; } div.skewright { width:100px; height:50px; background-color: khaki; }
div.skewleftbottom { width:100px; height:50px; background-color: khaki; } div.scalebottom { width:100px;
height:50px; background-color: gainsboro; } div.scalecenter { width:100px; height:50px; background-color:
gainsboro; }
div.rotatecenter:hover { -webkit-transition: linear 2s; -webkit-transform-origin:center;
-webkit-transform:rotate(30deg); -o-transition: linear 2s; -o-transform-origin:center; -o-transform:rotate(30deg);
-moz-transition: linear 2s; -moz-transform-origin:center; -moz-transform:rotate(30deg); transition: linear 2s;
transform-origin:center; transform:rotate(30deg); } div.rotatetopleft:hover { -moz-transition: linear 2s;
-moz-transform-origin:top left; -moz-transform:rotate(30deg); -webkit-transition: linear 2s;
-webkit-transform-origin:top left; -webkit-transform:rotate(30deg); -o-transition: linear 2s; -o-transform-origin:top
left; -o-transform:rotate(30deg); transition: linear 2s; transform-origin:top left; transform:rotate(30deg); }
div.skewright:hover { -moz-transition: linear 2s; -moz-transform-origin:right; -moz-transform:skew(30deg);
-webkit-transition: linear 2s; -webkit-transform-origin:right; -webkit-transform:skew(30deg); -o-transition: linear 2s;
-o-transform-origin:right; -o-transform:skew(30deg); transition: linear 2s; transform-origin:right;
transform:skew(30deg); } div.skewleftbottom:hover { -moz-transition: linear 2s; -moz-transform-origin:bottom
left; -moz-transform:skew(30deg); -webkit-transition: linear 2s; -webkit-transform-origin:bottom left;
-webkit-transform:skew(30deg); -o-transition: linear 2s; -o-transform-origin:bottom left;
-o-transform:skew(30deg); transition: linear 2s; transform-origin:bottom left; transform:skew(30deg); }
div.scalebottom:hover { -moz-transition: linear 2s; -moz-transform-origin:bottom; -moz-transform:scale(1.5);
-webkit-transition: linear 2s; -webkit-transform-origin:bottom; -webkit-transform:scale(1.5); -o-transition: linear 2s;
-o-transform-origin:bottom; -o-transform:scale(1.5); transition: linear 2s; transform-origin:bottom;
transform:scale(1.5); } div.scalecenter:hover { -moz-transition: linear 2s; -moz-transform-origin:center;
-moz-transform:scale(1.5); -webkit-transition: linear 2s; -webkit-transform-origin:center;
-webkit-transform:scale(1.5); -o-transition: linear 2s; -o-transform-origin:center; -o-transform:scale(1.5);
transition: linear 2s; transform-origin:center; transform:scale(1.5); }
Tematy: transform : translate | transform : translate3d | transform : rotate | transform : rotate3d | transform : scale |
transform : scale3d | transform : skew | transform : matrix | transform : matrix3d | transform-origin | transform-style
| perspective | perspective-origin | backface-visibility
Dane w pigułce
Zastosowanie
Ustala punkt początkowy, od którego następuje transformacja
Dziedziczenie
nie
Wartości
left center right długość procent | top center bottom długość procent
Wartość domyślna
50% 50%
Przykład
transform-origin: top left
Składnia JavaScript
object
.style.transformOrigin="top left"
Aby zdefiniować punkt początkowy transformacji, należy wpisać w definicji stylu transform-origin:wartość.
Żadna z przeglądarek nie obsługuje czystego kodu, Firefox wymaga użycia prefiksu -moz-, Chrome i Safari
prefiksu -webkit-, natomiast Opera - prefiksu -o-.
Polecenie transform-origin służy do ustalenia punktu, wokół którego następuje transformacja, np. obrót, skalowanie
czy pochylenie. Przykładowo, skalowanie następuje domyślnie od punktu początkowego, jakim jest środek
pojemnika, ale za punkt początkowy przekształcenia możemy przyjąć prawy górny róg pojemnika czy środek
dolnego brzegu. Obrót następuje domyślnie od środka pojemnika, ale możemy wybrać inne miejsce, np. prawy
górny róg.
Dostępne wartości:
Dla osi X - left (lewy brzeg), center (środek), right (prawy brzeg), procent długości od lewej strony, odległość w
pikselach od lewej strony.
Dla osi Y - top (górny brzeg), center (środek), bottom (dolny brzeg), procent długości od góry, odległość w
pikselach od góry.
1/2
CSS3 - transform-origin
Dodał pwimmer
wtorek, 22 luty 2011 11:37
Podając top left wyznaczamy lewy górny róg, bottom wyznacza środek dolnego brzegu, bottom right wyznacza
prawy dolny róg, 30% 30% wyznacza punkt w odległości 30% o lewego i od górnego brzegu pojemnika.
Poniżej prezentujemy przykłady. Statyczne ilustracje pokazują wynik przemiany za pomocą obrotu, pochylenia i
skalowania, natomiast przykłady dynamiczne (z wykorzystaniem transition) ilustrują przemiany po przesunięciu
kursora myszki nad pojemnik. Obrót od środka pojemnika (center):
Przyklad statyczny: Przykład dynamiczny (przesuń kursor myszki nad pojemnik): pojemnika (top left):
Obrót od lewego górnego rogu
Przyklad statyczny: Przykład dynamiczny (przesuń kursor myszki nad pojemnik): pojemnika (right):
Pochylenie od środka prawego brzegu
Przykład statyczny: Przykład dynamiczny (przesuń kursor myszki nad pojemnik): pojemnika (bottom left):
Pochylenie od lewego dolnego rogu
Przykład statyczny: Przykład dynamiczny (przesuń kursor myszki nad pojemnik): pojemnika (bottom):
Skalowanie od środka dolnego brzegu
Przykład statyczny: Przykład dynamiczny (przesuń kursor myszki nad pojemnik): (center):
Skalowanie od środka pojemnika
Przykład statyczny: Przykład dynamiczny (przesuń kursor myszki nad pojemnik): Interpretacja: Firefox (z prefiksem), Chrome (z prefiksem), Opera (z prefiksem).
2/2

Podobne dokumenty