Paweł Wimmer - blog towarzyszący kursowi języka HTML w Helionie. Założony 10 czerwca 2006.




darmowe liczniki - od 17.02.2008
Add to Google - zaabonuj RSS

Nowości Helionu


Blog > Komentarze do wpisu
CSS3 - manipulowanie obrazkami

W projektowanej specyfikacji CSS3 znajduje się szereg narzędzi do przekształceń 2D i 3D. Pokażemy tutaj kilka przykładów manipulowania ilustracjami - polecenia te możemy też wykorzystać do przekształcania innych elementów, np. bloków tekstu, ale chyba najczęściej będą one stosowane w odniesieniu do zdjęć.

Polecenie ma postać transform, po którym umieszczamy szereg parametrów i ich wartości. Na razie musimy stosować prefiksy -moz i -webkit, dzięki którym odczytują je poprawnie Firefox, Chrome i Safari; czyli -moz-transform i -webkit-transform.

Przykładowo, mamy obrazek w oryginalnej postaci:

Gdy w definicji obrazka zastosujemy styl o postaci:

style="transform: scale(0.8); "

obrazek zostanie zmniejszony o 20%.

Podobnie możemy powiększać obraz. Zauważ od razu, że niezmiennikiem powiększenia jest środek obrazu, a powiększenie spowoduje przysłonięcie znajdujących się przed nim lub za nim elementów.

Możemy skalować obraz tylko na szerokość lub na wysokość, stosując parametr scaleX lub scaleY.

Parametr rotate pozwala obrócić obraz o pewną liczbę stopni, np. rotate(15deg).

Gdybyśmy użyli wartości ujemnej, obraz zostanie obrócony w lewo. Obrotowi powinno towarzyszyć użycie stylów margin-top i margin-bottom, aby obrócony obraz nie przysłaniał elementów nad nim i pod nim.

Z kolei użycie parametru skew pozwoli pochylić obraz. Gdy zastosujemy parametr skew(20deg), uzyskamy przekrzywienie w lewo, według osi X. Użycie wartości ujemnej spowoduje przekrzywienie w prawo.

Dodanie w skew drugiej wartości, np. skew(20deg, 10deg), pozwoli uzyskać nie tylko przekrzywienie w osi X, ale i dodatkowo w osi Y.

Użycia tego polecenia w odniesieniu do tekstu raczej nie zalecam, chyba że ktoś chce uzyskać jakieś specjalne efekty.

Zmanipulowany śródtytuł

Z przykładów tych (jak również z pokazanych w poprzednich wpisach) widać jasno, jak potężne narzędzia wizualizacyjne oferuje projekt nowej specyfikacji stylów. Oczywiście trzeba je stosować z głową, aby fantazyjne efekty nie przysłoniły treści.

piątek, 05 lutego 2010, prwimmer

TrackBack
TrackBack w tym blogu jest moderowany. TrackBack URL do wpisu:
Komentarze
2010/02/05 07:10:19
Hm, w IE 8 i FF 3.0 żabka sobie spokojnie siedzi na każdym obrazku... O, w Operze 10.0 - tak samo. Czyżbym czegoś nie doczytał?
-
2010/02/05 07:29:27
IE8 - czego ty wymagasz? nowoczesnosci od IE? LOL
FF3.0 - eee... nowszych nie mieli? CSS3 dopiero wchodzi, takie rzeczy sprawdza sie na najnowszych stable wersjach :P

tu podrzuce ze na stable chrome dziala wszystko ladnie.

@PawełW. - czyli inaczej mówiąc wreszcie mamy narzędzie pozwalające umieszczać tekst w pionie w htmlu! Czyli np na blogu informacje jak data i czas wysłania [mało ważne] komentarza mogą być obok, w pionie i nie zajmować cennego miejsca w poziomie, zaś zabierać to którego przeważnie i tak jest za dużo [nawet w netbookach] czyli to w poziomie.
-
2010/02/05 07:40:04
IE 8 - bardzo nowoczesny, jeszcze niedawno była... 6, ale marudziłem adminowi.
A FF mam w wersji "portable", dlatego 3.0. No dobra, a Opera? 10 jest niezbyt stara (też portable) i chwali się nowoczesnością...
-
2010/02/05 07:40:58
Aha, dopiero wchodzi... No dobra, obejrzę żabkę w domu :-)
-
Gość: nowotny, 77-253-30-89.adsl.inetia.pl
2010/02/05 09:22:47
Nie wiem jakiego dokładnie FF portable masz ale na portableapps.com są zawsze najnowsze wersje...

Co do Opery to obsługa transformów dopiero od wersji 10.50 ale żaba i tak działać nie będzie bo Paweł nie użył atrybutów z prefixami dla Opery (-o-)... No, poza ostanią żabą... ;)
-
2010/02/05 09:48:56
@nowotny - ale prefiks -o- nie działa już w Operze.
-
2010/02/05 10:04:05
@nowotny
Dzięki, fakt, trochę zaniedbałem aktualizacje. Ściągnąłem 3.6 - ale działa o wiele gorzej niż 3.0; zniekształca grafikę. Żaba nr 3 jest rozdeptana, a dalsze - krzywe...
-
Gość: nowotny, 77-253-132-1.adsl.inetia.pl
2010/02/06 10:30:49
@prwimmer
U mnie działają tylko przykłady z prefiksem a mam najnowszą alfe Opery z wczoraj...
-
2010/02/06 10:57:00
@nowotny - czyżby przywrócili prefiks? Dziwna sprawa, wykonywałem kilka prób i prefiks nie chciał mi działać. Ale mam O10.10.
-
2010/02/06 12:22:20
@prwimmer
Patrz mój poprzedni komentarz... Obsługa trasnformów i innych CSS3 bajerków dopiero od 10.50...

I nie rozumiem uwagi odnośnie przywrócenia prefixów... akurat ta funkcja jest na tyle nowa że jeszcze nie mieli okazji ich usunąć... :/