Uždaryti
Jei aktyviai domiesi kompiuterinės grafikos naujovėmis, web dizainu, svetainių kūrimu, užsiprenumeruok E-grafika.lt turinį per RSS!
Nori pareikšti savo nuomonę? Peržiūrėti video pamokas? Gauti tik nariams prieinamų resursų? Sužinoti apie naujienas pirmasis? Tada registruokis!
Jeigu jau esi užsiregistavęs, prisijunk ir diskutuok forumuose, komentuok naujienas, straipsnius, video pamokas, bendrauk su kitais bendruomenės nariais!

Straipsnis

Ar darai šias 10 CSS kodavimo klaidų?

Darbas su CSS kartais gali būti lyg iššūkis. Naršyklės kartas nuo karto keičia kodo interpretavimą (na, na? Ar žinote kuri naršyklė tai mėgsta daryti? Na pagalvokite. Taip! Internet Explorer...), todėl neretai rašydami kodą atsitrenkiame į sieną — kodas parašytas lyg ir gerai, o rodo visiškai ne taip, kaip norima. Nors CSS yra nepaprastai naudinga ir galinga kalba, dažnai ji gali būti panaudota neteisingai, kas, beje, sukels jums košmarą...



1. Ignoruojamas naršyklių suderinamumas

Tai turbūt pati pagrindinė problema kuriant web tinklapius, kadangi svetainė turi būti atvaizduojama vienodai visiems, ir nesvarbu, kokią naršyklę lankytojai naudoja. Bandydami tai įgyvendinti kartais tiesiog rauntės plaukus nuo galvos.

Svetainių kūrėjams yra lengva paruošti visą svetainės maketą pagal jų mėgstamiausias naršykles ir nesirūpinti, kaip svetainė atrodys kitose naršyklėse. Kai vis dėl to atsižvelgiama į kitas naršykles, iškyla įvairių problemų — nuo paprasčiausios atvaizdavimo mistikos iki visiško paradokso. O kartais tiesiog nėra galimybės pamatyti, kaip atrodys svetainė su tam tikra naršykle, kadangi pastarosios neįmanoma įdiegti jūsų operacinėje sistemoje ir pan. Tokiai problemai spręsti geriausias metodas yra apsilankyti BrowserShots svetainėje, kurioje galėsite įvesti svetainės adresą ir pažymėti norimas naršykles (detalesnį browsershots svetainės aprašymą rasite E-grafika.lt skyrelyje „Nuorodos“).

2. Neatsižvelgiama į mažesnes ekrano rezoliucijas

Daugelis tikrų dizainerių ir web svetainių kūrėjų naudoja didelius vaizduoklius, tuo tarpu lankytojai besilankantys svetainėje greičiausiai tokių neturi. Svetainių dizainai, kurie nepalaiko mažesnių rezoliucijų (tarkime, 800x600 ar bent 1024x768), lankytojams gali tapti visiškai negražus, neproporcingi ir nepatogūs. Taigi atsižvelgdami į mažesnes rezoliucijas užtikrinate, kad visi svetainės lankytojai ras reikiamą informaciją ir liks patenkinti.

3. Nepasinaudojama CSS karkasais

Negalima tvirtai teigti, kad CSS karkasų nenaudojimas yra klaida. Ne, taip nėra. Tačiau jeigu jūs kuriate CSS maketą visiškai nuo nulio, galite paklausti savęs kodėl? Yra nemažai neblogų CSS karkasų tokių kaip BluePrint arba 960 CSS Framework. Tokie karkasai sukurti tam, kad jūs galėtumėte sukurti kokybiškus ir daugelį naršyklių palaikančius web dizainus. Jeigu nekuriate ko nors visiškai radikalaus, unikalaus, galbūt vertėtų pamąstyti apie karkaso panaudojimą? Visgi kam išradinėti dviratį, taip? Kita vertus, yra ir tokių atvejų, kai karkasai netinka. Pavyzdžiui, jaučiate, kad kurdami savo mini karkasą (jei tik taip galima pavadinti) įgausite naujų žinių, patirties, arba manote, kad be svetimo karkaso galėsite lengviau daryti pakeitimus ateityje. Tačiau kartais karkasų atmesti tikrai nereikėtų.

4. Nebandoma panaudoti bendrinių klasių

Gerai, pavadinimas gali atrodyti kiek miglotas, tačiau greit suprasite, ką aš turiu omenyje. Štai keletas bendrinių klasių pavadinimų:

.clear { clear: both; }
.left { float: left; }
.right { float: right; }

o HTML faile galite kokiems nors DIV blokams priskirti bendrinę klasę.

]<div id="blokas" class="right"></div> 
<div id="dar_vienas_blokas" class="right"></div>
<div id="blokas_trecias" class="right"></div>

Nors buvo galima visiems blokams priskirti float: right savybę atskirai, bendrinių klasių naudojimas yra paprastesnis ir optimalesnis.

5. Nevalidus HTML kodas

Lažinuosi, kad nežinojote, jog nevalidus HTML kodas gali paveikti CSS, taip? Na, iš tikrųjų gali. Pirmiausia, jūs negalite validuoti CSS kodo, jei HTML kodas yra nevalidus. Antra, yra daug atvejų, kai HTML, o ne CSS gali sukelti problemų. Neparašyta bloko pabaigos žymė ten, ne taip parašytas CSS klasės pavadinimas HTML kode... Gali būti bet kas. Tad įsitikinkite, kad HTML kodas yra taisyklingas ir validus, o tik tada pereikite prie CSS tikrinimo.

6. Nevalidus CSS kodas

Idėja paprasta: jeigu CSS kodas atitinka W3 standartus (yra validus/taisyklingas), yra mažesnė tikimybė, kad svetainė bus nesuderinama su kai kuriomis naršyklėmis. Paprasčiau ir būti negali.

7. Griozdiškų (idiotiškų) fono paveikslėlių panaudojimas

Pradedantieji dažnai nesupranta, kad dideli paveiksliukai neišgelbės. Įsivaizduokite, kad koks nors žmogus sugalvojo uždėti 3,000x5,000px dydžio fono paveikslėlį manydamas, kad jo „užteks“ visoms, net ir didžiausioms, rezoliucijoms. Jeigu tame paveikslėlyje kartojasi tas pats elementas, tai kur kas optimaliau būtų palikti tik vieną fono elementą ir jį automatiškai kartoti su šiek tiek CSS magijos. Tad didelį paveikslėlį, kuris galbūt „sveria“ 1 MB, būtų galima pakeisti keliasdešimt kilobaitų sveriančiu paveiksliuku.

Jeigu naudojamas didelis fono paveiksliukas, pralaimima dėl dviejų priežasčių:

  • išnaudojama daug duomenų srauto;
  • lankytojas verčiamas ilgiau laukti, kol užsikraus svetainė.

Žinoma, kartais didesnių paveikslių neišvengiama, tačiau jeigu galima be jų apsieiti, taip ir darykite. Neiškeiskite svetainės lankytojo komforto į savo neoptimalius sumanymus.

8. CSS naudojimas viskam

Kai žmonės išmoksta kokią nors technologiją ar atlikimo metodą, jie bando tai integruoti visur, kartais net ten, kur tai yra nenaudinga.

Pavyzdžiui, kartais yra kur kas paprasčiau sudėlioti informaciją į lentelę, negu į CSS pagrįstais DIV blokais ir pan. Turėtume įsiminti, kad naudojame tokias technologijas kaip CSS norėdami paspartinti darbą. Kai tai pradeda vilkinti darbą, galbūt žengiame ne ta kryptimi arba tiesiog persistengiame.

9. Tiesioginis CSS naudojimas

Jeigu kuriate svetainės dizainą, beveik visais atvejais norite, kad CSS ir HTML būtų atskirti vienas nuo kito. Kai nusprendžiate ką nors pakeisti, jums nereikia raustis po HTML makalynę ir ieškoti tos žymės, kurioje sudėtas CSS aprašas.

Taigi vietoj tokio kodo rašymo:

<a href="nuoroda" style="color: green; text-decoration: none;">Nuoroda</a>

beveik visada turėtumėte rašyti taip:

<a href="nuoroda" class="klase_kurioje_aprasytas_nuorodos_stilius">Nuoroda</a>

Naudokite tiesioginius CSS aprašus, jei tikrai žinote, jog ateityje nereikės nieko keisti.

10. Panaudojama per daug CSS failų

Ar teko kada nors matyti dizainą, kuris turi 10-12 skirtingų CSS failų? Tai tikras košmaras tiems, kurie teiksis redaguoti tokį dizainą.

Be to, naršyklė apdoros svetainės kodą tuo greičiau, kuo mažiau bus CSS failų. Taip pat sutaupysite ir laiko žmogui, kuris redaguos dizainą.

Žinoma, yra ir išimčių. Tarkime, kad svetainės dizainą sudaro papildomi elemnentai, kurie yra kurti ne jūsų, tad nenorite sugrūsti visko į vieną vietą. Tačiau nesugalvokite kurti atskirų CSS failų dizaino viršui, šoniniam, pagrindiniam blokams, apačiai ir pan. Tai būtų tiesiog absurdas!

Apie straipsnį

Originalaus straipsnio autorius Glen Stansberry. Straipsnį išvertė bei savo išminties ir patirties pridėjo Edmundas K. (adijux). smile

Straipsnio šaltinis: http://net.tutsplus.com/articles/web-roundups/are-you-making-these-10-css-mistakes/.

Data ir laikas 2008-11-17 00:37:15   Autorius adijux   Gairės Gairės: Cascading Style Sheets, Patarimai naujokams

Komentarai

Valuediz 2008-11-18 14:22:20
Valuediz Taip ir pasirodė, kad kažkur matyti patarimai neutral
 
adijux 2008-11-19 17:40:54
adijux Taip, šiuos patarimus išverčiau, bet pridėjau keletą ir savo minčių.
 
steelset 2009-01-17 16:18:02
steelset Protingi patarimai, o ypac pradedantiesiems.
 
dvneo 2009-03-02 15:14:19
dvneo Reiks su CSS pradėti dirbti cheeze
 

Skaitomiausi straipsniai

Spalvos dizaine

Nekyla nė abejonės, kad spalvos tiek spaudos, tiek tinklalapio dizaine yra vienas iš svarbiausių rodiklių, lemiančių gražų dizainą. Atrodo, jog spalvas galima rinktis pagal nuožiūrą, tačiau, deja, tai ne visada pasiteisina. Pastaruoju metu pastebėjau, kokias klaidas daro pradedantieji savamoksliai dizaineriai, todėl galiausiai nusprendžiau aprašyti tas klaidas ir paaiškinti, kaip jų išvengti.

Esminė problema yra ta, kad kai kurie žmonės sugeba sukurti patrauklius dizaino elementus, juos tvarkingai išdėstyti, tačiau neteisingų spalvų pasirinkimas sugadina, sudarko vaizdą, o tai nulemia galutinį sukurto dizaino rezultatą.

Todėl pasistengsiu kuo detaliau išnarplioti dažnai pasitaikančias spalvų derinimo klaidas, šiek tiek apžvelgsiu bendrąją spalvos teoriją ir, žinoma, pateiksiu tiek tinkamų, tiek netinkamų spalvų derinių pavyzdžių.


Tinklalapių kūrimas: pirmieji žingsniai

Žmonės, kurie domisi interneto naujovėmis, lankomais tinklalapiais, portalais, anksčiau ar vėliau iškelia sau klausimą — kaip sukurti tinklalapį? Klausimas iš pirmo živlgsnio atrodo visiškai „nekaltas“ ir gana paprastas: be išvedžijimų, nesuprantamų žodžių ar mokslinių terminų. Tačiau asmenims, kuriems šis klausimas užduodamas (čia, manau, nereikia nė minėti, kad žmogus, kurio klausiama, išmano tinklalapių kūrimo subtilybes), visiškai nesuprantama, kaip galima užduoti tokį naivų klausimą?

Stebitės, kodėl tai naivus klausimas? Jeigu taip, tada pamąstykite, iš ko susideda tinklalapio kūrimo procesas. Deja, nemanykite, kad solidų, gerą tinklalapį galima sukurti per kelias valandas ar dienas. Reikia turėti aiškią internetinės svetainės plėtros viziją, patirties, įgūdžių, daug laiko, kolegų (partnerių) ar draugų, kurie padėtų kurti tinklalapį, motyvacijos ir, be abejo, reikia turėti tikslą.

Išvardijau nemažai reikalavimų (raktažodžių), pagal kuriuos turėtumėte orientuotis kurdami tinklalapį, tačiau vien mano tuščiažodžiavimas nepadės jums sužinoti apie interneto svetainių kūrimo aspektus, todėl šiame straipsnyje aptarsiu kiekvieną sritį atskirai, pasidalinsiu savo patirtimi ir nukreipsiu jus teisinga linkme.


Technikos apvalintų kampų elementams kurti

Naršydami įvairiuose tinklalapiuose tikriausiai pastebėjote, kad vis dažniau yra naudojami užapvalinti kampai (angl. rounded corners): juos galima pamatyti tinklalapio komentarų blokuose, viršutinėse/apatinėse (header/footer), turinio (content) blokuose bei kitose struktūros dalyse.

Apvalintų kampų elementus sukurti galima ne vienu, o keletu būdų. Elementų kampams apvalinti kartais naudojama JavaScript kalba, tačiau rimčiausia priežastis, kodėl šis būdas nelabai populiarus, — išjungtas JavaScript palaikymas kai kurių lankytojų naršyklėje. Taip pat galime sukurti apvalintus elementus panaudoję pakopinių stilių (CSS) savybes ir paveikslėlius. Dar kitas būdas — kuris yra ateities sprendimas — CSS3. Tai nauja pakopinių stilių specifikacija, kuri dar nėra užbaigta, tačiau kai kurios naršyklės jau palaiko keletą naujosios specifikacijos savybių.

Taigi, panagrinėsime dažniausiai taikomus sprendimus elementų kampų apvalinimui: pavyzdžius, pliusus ir minusus; palyginsime aptariamus sprendimus.


Naujausi komentarai straipsniuose

autorius Martyna

http://img294.imageshack.us/i/kodel.png/

va man taip nesusiligiuoja, ka daryti?

autorius krienas

"Antrinės spalvos gaunamos sumaišius dvi pirmines spalvas, o tretinės — sumaišius dvi antrines." Šiaip jau, pagal schemą, tretinė spalva gaunama sumaišius ne dvi antrines, o pirminę su antrine: yellow(primary)+green(secondary)=yellow-green(tertiary).

O šiaip geras, išsamus lietuviškas straipsnis, ačiū autoriui; kam sunkiau su anglų kalba, yra Alvydo Jonaičio knyga "Spalvotyra".

autorius adijux

Daugumai žmonių atvirkščiai: jie nenori, kad nuorodos atsidarytų naujame lange. Manau, kad jeigu žmogus nori, kad nuoroda atsidarytų naujame lange, jis paspaus dešinįjį pelės mygtuką ir pasirinks „Open link in a new window“ arba „Open link in a new tab“. wink

autorius Christine

šeip aš dirbu su paprastomis programomis kaip notepad++ ir keletu kitų. norėčiau sužinot gal yra kitokių programuų su kuriom taip pat nesunku dirbti, bet turi daugiau galimybių ir nemokamai galima parsisiųsti? ar tai tik svajuko dramblionė?

autorius Christine

straipsnis geras tikrai, tik man užkliuvo vienas dalykas. Kai įdedate nuorodas, norėtųsi, kad jos atsidarytų kitame puslapyje, nes paskui sunku rasti kelią atgal, užima laiko arba nesinori giliau naršyti to puslapio į kurį davėte nuorodas.