Professional Documents
Culture Documents
471 - html5 I Css3 Prilagodljiv Web Dizajn - Issuu
471 - html5 I Css3 Prilagodljiv Web Dizajn - Issuu
1
Poetak rada sa
HTML-om 5, CSS-om 3
i prilagodljivim dizajnom
Donedavno su web sajtovi kreirani sa fiksnom irinom, kao to je 960 piksela, i oekivalo se
da e svi krajnji korisnici imati prilino isto iskustvo prilikom pregleda. Ova fiksna irina nije
bila dovoljna za ekrane laptopa i korisnici sa monitorima visoke rezolucije imali su velike
margine sa obe strane ekrana.
Meutim, sada postoje pametni telefoni. Appleov iPhone prvi je stvarno ponudio pretraivanja na telefonu i mnogi drugi proizvoai sada idu njegovim stopama. Za razliku od nekadanjeg pretraivanja Weba na malim ekranima, koje je zahtevalo spretnost palca svetskog
ampiona Tiddlywinksa, sada ljudi bez problema koriste svoje telefone za pretraivanje Weba.
Pored toga, osetan je porast korisnika koji za pregled sadraja radije koriste ureaje sa malim
ekranima (na primer, tablete i netbookove) nego velike ekrane. Nesporna je injenica da sve
veom brzinom raste broj ljudi koji koriste male ureaje sa malim ekranom za pregled Interneta, ali je isto tako, sa druge strane, uobiajena i pojava upotrebe monitora od 27 i 30 ina.
Sada je razlika izmeu najmanjih i najveih ekrana za pretraivanje Weba vea nego ikada
ranije.
Sreom, postoji reenje za ovu raznolikost pretraivaa i ureaja kojima se prikazi uvek ire.
Prilagodljiv web dizajn koji je kreiran pomou HTML-a 5 i CSS-a 3 omoguava da web sajt
funkcionie na vie razliitih ureaja i ekrana. A najbolji deo je to su tehnike sve implementirane bez potrebe za reenja servera / backend.
[10]
Pa, to vie pretraujete web sajtove, kao to je ovaj koji je prikazan na prethodnoj slici, na
iPhone i Android mobilnim ureajima, razlog e vam biti jasniji. Veoma je dosadno i frustrirajue da konstantno uveliavate i smanjujete podruja stranice da biste mogli da proitate sadraj. I pomeranje stranice ulevo i udesno da biste proitali reenice koje su izvan prikaza je isto
toliko dosadno, a kliknuli ste na link koji ne elite da otvorite. Sigurno je da mi moemo bolje!
[11]
[12]
[13]
Ako koristite Safari pretraiva, moja omiljena alatka je Resize (http://resizeSafari.com/), mada
je ResizeMe (http://web.me.com/aaronholla/Safari_Extensions/ResizeMe.html)
slina alatka koja je i besplatna.
Ako koristite Firefox, Firesizer (https://addons.mozilla.org/en-US/firefox/addon/
firesizer/) je odlian alat, a korisnici Chromea bi trebalo da isprobaju alatku odgovarajueg naziva Windows Resizer (https://chrome.google.com/webstore/detail/
kkelicaakdanhinjdeammmilcgefonfh).
Niste ljubitelj ekstenzija? Evo jo nekih alternativa: ja sam napisao jednostavnu HTML stranicu
za prikazivanje visine i irine aktuelnog prikaza u prozoru pretraivaa. Koristei JavaScript
biblioteku jQuery (http://jquery.com), ova stranica primenjuje visinu i irinu aktuelnog prikaza
i prikazuje te vrednosti. Ovu stranicu moete drati otvorenu na drugoj kartici pretraivaa,
promeniti veliinu prozora, a zatim se vratiti na web sajt na kojem radite da biste videli kako
se on prilagoava. Izuzetno jednostavnu stranicu What size is my viewport page? moete da
pronaete na adresi
http://benfrain.com/easily-display-the-viewport-size-of-your-pageforresponsive-designs/.
[14]
Sada imamo sve to nam je potrebno da zaponemo da cenimo najbolje od onoga to prilagodljivi web moe da nam ponudi. Otvorite pretraiva po svom izboru, ukljuite alatku za veliinu
ekrana i pogledajte stranicu http://thinkvitamin.com/.
[15]
[16]
[17]
Zaglavlje ostaje isto, ali je linija menija sa desne strane jo tanja; ikonice su sada poreane dve
po dve, dok su blokovi teksta podeeni i tekst tee usklaeno unutar bloka teksta.
[18]
ta kaete na to? Cela linija menija se prilagodila naem novom prikazu, omoguavajui da
sadraj, najvaniji deo sajta, zauzme celu irinu prozora pretraivaa. Vidite li da su linkovi u
zaglavlju sada horizontalni, a nalazili su se pored logotipa, ija veliina je sada promenjena?
Sve ove promene pomau vam da ponudite bolji prikaz za korisnika, u zavisnosti od dimenzije
prikaza.
[19]
Posebno obratite panju na grid od devet slika. Dok smanjujete irinu prikaza (na manje od oko
960 piksela), vidite li ta se deava? Grid od tri reda po tri slike postae grid od tri reda sa po dve
slike i jednog reda sa tri slike na dnu, kao na sledeoj slici.
[20]
[21]
Ako smanjimo prikaz na irinu manju od 480 piksela, grid sa slikama e se ponovo promeniti,
prikazujui sada red od po dve slike, zatim tri i etiri slike. Ove slike e nastaviti da se smanjuju
dok smanjujemo prikaz na oko 300 piksela. Na sledeoj slici prikazano je kako stranica izgleda
na iPhoneu.
[22]
[23]
Ja ne kucam fiziki Doctype svaki put kada piem stranicu, a mislim da to ni veina vas ne radi.
Neki od vas se, verovatno, bune, a zato? ta je sa dodavanjem linkova u JavaScript ili CSS
na vaoj stranici? Ako imate postojei HTML 4.01 kod, pravilan nain povezivanja sa fajlom
skripta bi bio sledei:
<script src=js/jquery-1.6.2.js type=text/javascript></script>
[24]
[25]
[26]
Mi dodajemo zaobljenu pozadinu u element <a> kreiranjem dve slike. Prva slika, pod nazivom
headerLeft.png, bila bi irine 15 piksela i visine 40 piksela, a druga, pod nazivom headerRight.
png, u ovom primeru, bila bi ira nego to bismo mi ikada pretpostavili za zaglavlje (ovde 280
piksela). Svaka od ovih slika bi predstavljala jednu polovinu kliznih vrata. Dok jedan element
raste (tekst unutar naih <span> tagova), pozadina ispunjava prostor, kreirajui neku vrstu reenja zaobljenog ugla. Evo kako u ovom primeru izgleda CSS:
a {
display: block;
height: 40px;
float: left;
font-size: 1.2em;
padding-right: 0.8em;
background: url(images/headerRight.png) no-repeat scroll top right;
}
a span {
background: url(images/headerLeft.png) no-repeat;
display: block;
line-height: 40px;
padding-left: 0.8em;
}
[27]
Problem dizajna je reen, ali zahteva dodatni kod (semantiki element <span> nema vrednost)
i dva dodatna HTTP zahteva (za slike) serveru za kreiranje efekta na ekranu. Sada bismo mogli
da kombinujemo dve slike u jednu i kreiramo sprajt, a zatim da upotrebimo poziciju pozadine:
CSS parametar za pomeranje, ali je ovo reenje, ak i sa utedom propusnog opsega koje nudi,
ipak nefleksibilno. ta se deava ako klijent eli da uglovi imaju ui radijus? Ili eli drugu boju?
Trebalo bi ponovo da kreiramo slike. Naalost, pre CSS-a 3 ovo je bila realna situacija u kojoj
su se nalazili frontend dizajneri i programeri. Dame i gospodo, ja sam predvideo da e biti stvoren CSS3! Hajde da promenimo HTML, tako da stoji samo sledee:
<a href=#>Box Title</a>
a {
float: left;
height: 40px;
line-height: 40px;
padding-left: 0.8em;
padding-right: 0.8em;
border-top-left-radius: 8px;
border-top-right-radius: 8px;
background-image: url(images/headerTiny.png);
background-repeat: repeat-x;
}
[28]
U ovom primeru dve prethodne slike su zamenjene jednom slikom, irine jednog piksela, koja
se ponavljala du x ose. Iako je slika irine svega jednog piksela, ona je visine 40 piksela, verovatno via od bilo kog sadraja koji e biti unet. Kada koristite sliku kao pozadinu, vano je da
uvek prebacite visinu, imajui u vidu prelivanje sadraja, to, naalost, zahteva vee slike i
vee zahteve za propusni opseg. Meutim, ovde, za razliku od reenja sa celom slikom, CSS3
vodi rauna o uglovima pomou parametara border-radius. Klijent eli da uglovi budu malo
zaobljeniji, recimo 12 piksela? Nema problema, samo promenite parametar border-radius
na 12 px i va posao je zavren. Parametar CSS-a 3 za zaobljene uglove je veoma brz, fleksibilan i podran u pretraivaima Safari (v3+), Firefox (v1+), Opera (v10.5+), Chrome (v3+) i
Internet Explorer 9. Microsoft je, nakon objavljene podrke prilagodljivog dizajna za IE 9 u
budunosti (nadam se da oseate blagi sarkazam koji izvire iz ovih rei), ak dizajnirao interaktivnu stranicu, predstavljajui razliite efekte koji mogu da se postignu pomou parametra
border-radius.
Pogledajte demonstraciju na adresi
http://ie.microsoft.com/testdrive/html5/borderradius/default.html.
[29]
#42c264;
-webkit-linear-gradient(#4fec50, #42c264);
-moz-linear-gradient(#4fec50, #42c264);
-o-linear-gradient(#4fec50, #42c264);
-ms-linear-gradient(#4fec50, #42c264);
-chrome-linear-gradient(#4fec50, #42c264);
linear-gradient(#4fec50, #42c264);
Mislim da ete se sloiti razlike izmeu verzije slike i cele CSS verzije su beznaajne. Kreiranje vizuelnih elemenata pomou CSS-a 3 omoguava da na prilagodljivi dizajn bude fleksibilniji od dizajna kreiranog pomou slika. tavie, i gradijenti su podrani u modernim mobilnim
pretraivaima; jedino nedostaje podrka za gradijente za pretraivae, kao to su IE9 i starije
verzije.
[30]
[31]
Meutim, efekti dobrog izgleda nisu samo u domenu Webkit-zasnovanih pretraivaa, Safarija
i Chromea. Stranica na sledeoj adresi odlino funkcionie i u Firefoxu i drugim isto CSSzasnovanim reenjima:
http://designlovr.com/examples/dynamic_stack_of_index_cards/
[32]
Oigledno, ovi efekti nisu znaajni za svaki web sajt. Oni su savrena ilustracija progresivnog poboljanja. U pretraivaima koji ne podravaju efekte prikazane su samo statine slike.
Meutim, korisnici sa modernijim pretraivaima mogu da uivaju u vizuelnim poboljanjima.
Iako je ogranien broj pretraivaa koji podravaju CSS3 3D transformacije, podrka za CSS3
pravila, kao to su senke za tekst, gradijenti, zaobljeni uglovi, RGBA boje i viestruke pozadinske slike, je dobra i ova pravila pruaju fleksibilne naine pronalaenja reenja za uobiajene
probleme dizajna koji prate sve nas i koji nam zadaju glavobolju.
[33]
Takoe je vano da ponovim da e, ako budet omoguava, moda biti prilike kada je mobilna
verzija web sajta skrojenog po meri mnogo bolja opcija od prilagodljivog dizajna. Da bih to
preciznije objasnio, reenja fokusirana na mobilne ureaje koja pruaju razliite sadraje korisnicima takvih ureaja nazivam mobilni web sajtovi. Ne verujem da bi se iko ko zagovara tehnike prilagodljivog web dizajna ljutio ako bih rekao da je prilagodljiv web dizajn odgovarajua
zamena za mobilni web sajt u svakoj situaciji.
[34]
[35]
Ako svi elementi izgledaju isto, ak i u starijim pretraivaima (na primer, u Internet
Exploreru 8 i starijim verzijama) dodaje se znaajan broj slika u web sajt. Zbog toga
e sajt biti sporiji, skuplji za kreiranje i tei za odravanje.
Prilagodljiv kod koji moderni pretraivai razumeju znai da je bri i web sajt. A bri
web sajt se rangira mnogo bolje u mainama za pretragu nego sporiji.
Broj korisnika koji koriste starije pretraivae se smanjuje, a broj korisnika koji
koriste moderne pretraivae raste podrimo ih!
Rezime
Objasnili smo ta se podrazumeva pod terminom prilagodljiv dizajn i pregledali smo odline
primere takvog dizajna koji koriste alatke i tehnike koje emo opisati u ovoj knjizi. Takoe smo
potvrdili da treba da promenimo razmiljanje sa desktop-centrinog dizajna na agnostiki stav
ureaja, prvo planirajui sadraj za najmanja podruja prikaza i postepeno poboljavajui nain
pregledanja od te take. Pregledom novih specifikacija HTML-a 5 ustanovili smo da postoje
odlini delovi ovog jezika koje danas moemo iskoristiti za na napredak u poslu. Konkretno,
novi semantiki jezik omoguava da napredujemo u poslu tako to kreiramo stranice sa manje
koda i vie znaenja, nego to je to do sada bilo mogue.
Pre nego to upotrebimo CSS3 za dodavanje vizuelnih efekata u na dizajn, kao to su gradijenti, zaobljeni uglovi, senke za tekst, animacije i transformacije, prvo emo ga upotrebiti za
mnogo vaniju ulogu. Upotrebom medija upita CSS-a 3 moi emo da usmerimo specifina
CSS pravila u specifinim prikazima. U sledeem poglavlju emo zapoeti najozbiljniju pretragu prilagodljivog web dizajna.
[36]