Avatar billede pnr Nybegynder
11. juli 2011 - 16:04 Der er 14 kommentarer og
1 løsning

Gode råd omkring CSS inline og extrernal

Jeg vil gerne lave mit css så godt som muligt og ligge derfor som hovedtregel alt min styling i css filer. MEN når jeg skal palcere elementer, synes jeg at det giver mest mening at lave inline styling. Det at skulle lave en masse forskellige klasser med margin, padding i virker meget uoverskuligt.

Hvordan styre i andre det?

En anden ting er at have flere css filer, hvad er holdningen til det. Jeg prøver at dele mit css op i forskellige filer for at lave et bedre overblik, men hvad er holdningen til det?

På forhånd mange tak for svar!
Avatar billede keysersoze Guru
11. juli 2011 - 16:32 #1
Opdeling i flere filer er fint såfremt du har større blokke der kun skal bruges enkelte steder tværs af hjemmesiden - ellers vil jeg umiddelbart foretrække så få filer som muligt så klienten ikke skal hente så mange.

Inline styles vil jeg umiddelbart fraråde hvis SEO er i fokus, simpelthen for at få så meget content i forhold til kode.
Avatar billede keysersoze Guru
11. juli 2011 - 16:33 #2
Sagt på en anden måde; gør op med dig selv om du udvikler for at du skal have det lettest muligt - eller for at give hjemmesiden det bedste resultat.
Avatar billede pnr Nybegynder
11. juli 2011 - 16:42 #3
Hej keysersoze

mange tak for dine kommentare!

Min problem stilling mht. inline styling er at jeg tit får en masse specifik styling af elementer. f.eks margin og padding af elementer,Når jeg har mange forskellige side vil det vil give en masse klasser i min css fil, og jeg synes at jeg har svært ved at forsvare den ekstra komplecitet.

Dvs. at hvis man vil have det bedste resultat så skal alt inline styling flyttes i css filen?
Avatar billede Slettet bruger
11. juli 2011 - 18:02 #4
Jeg lægger kun ud i stylesheetet når der er genbrugsgevisnter.
Styling af et "unikt" element holder jeg oftest inline - hvor det er let at tilpasse når man alligevel har fat i HTML'en - uden hele tiden at skulle opfinde ny, mere og mere eksotiske class-navne.
- Og huske dem alle 2 år efter..

Men jeg bruger ofte flere classes på samme element + inline styling.
- en class til fonten, en anden til farver/hjørner/bagrund, en tredie til cursor/mouseover-effekt, og så inline: position, alignment osv.:

class="mellemRund lysTop tool" style="position:relative; left:-24px;"
Det er også en stor hjælå til at holde antallet af classes nede og lette kosmetiske ændringer (og sikre et ensartet udseende).

Til gengæld bruger jeg kun ét stylesheet - så er det let at søge i.
Avatar billede keysersoze Guru
11. juli 2011 - 18:00 #5
Enten må du have nogle meget specielle sider eller også tænker du ikke nok genbrug - normalt vil man kunne lave nogle enkelte klasser med fx standard margin og padding som så kan bruges sammen med andre klasser på et enkelt element.

Egentlige unikke designelementer kan man selvfølgelig ikke gøre dette med men dem ville jeg stadig lægge i en .css-fil af flere grunde ud over SEO-delen; dels giver det lettere HTML-sider, altså skal klienten ikke downloade så meget, og dels bevarer du separationen mellem markup (HTML) og styles (CSS) hvilket, i hvert fald for de fleste udviklere, gør det lettere at vide hvor ting skal tilrettes.

Er det i udviklingsfasen du mener det er lettest med inline styles er det fair nok - sådan gør jeg i hvert fald selv i nogle tilfælde. Men så snart jeg er færdig med at opsætte de enkelte elementer flyttes alt ud i css-filen.
Avatar billede Slettet bruger
11. juli 2011 - 18:13 #6
#2 - det er for skarp en opdeling.
- hvis det er et helvede at finde rundt i, mister man lysten til liige at få de sidste raffinementer med.
Avatar billede keysersoze Guru
11. juli 2011 - 20:02 #7
#6 Sådan er vi så forskellige; jeg udvikler ikke for at det skal være let og lige til for mig, jeg udvikler for at give det bedste resultat for kunden og det betyder i langt de fleste situationer at inline CSS er no-go.
Avatar billede pnr Nybegynder
11. juli 2011 - 22:44 #8
Tusind tak til jer begge for jeres kommentare!

Jeg lader lige spørgsmålet stå et par dage, for at se om der er andre der har lyst til at fortælle om, hvordan de fortrækker at lave markup.
Avatar billede DaBs Nybegynder
12. juli 2011 - 23:39 #9
Det kommer and på, hvad du lægge vægt på på hjemmesiden. Jeg plejer at sige: Hvis du fokusere på HVORDAN den ser ud, f.eks. portfolio eller andet, burde inline være no-go. Men hvis du mere fokusere på HVAD din hjemmeside kan, synes jeg at det er ret så ligegyldigt, og at som #5 også siger, kun skal bruges henvisninger når det er genbrugelsesmuligheder.
Avatar billede krischjo Nybegynder
14. juli 2011 - 09:53 #10
Hvad vil det egentlig sige "inline styling"? Det har jeg ikke rigtig hørt om. Jeg bruger bare margins og tables for at placere mine ting der hvor jeg vil have det, selvom jeg er træt af at skulle bruge tables. Men jeg kan ikke få sat tingene ordentligt op med CSS kun :(
Avatar billede keysersoze Guru
14. juli 2011 - 11:05 #11
du vil aldrig kunne sætte noget op med CSS alene - det kræver noget HTML at lægge din CSS på. Men mon ikke det kræver dit eget spørgsmål at få løst dit mysterie...
Avatar billede krischjo Nybegynder
14. juli 2011 - 11:21 #12
Hvornår kommer dit standup show RuneKlan^#2?

Da jeg skrev css kun var det bare % tables jeg mente.
Avatar billede pnr Nybegynder
15. juli 2011 - 08:11 #13
Mange tak for jeres kommentar, keysersoze og DaBs smid svar så er r der point.
Avatar billede keysersoze Guru
15. juli 2011 - 09:12 #14
svar :)
Avatar billede DaBs Nybegynder
04. september 2011 - 10:47 #15
svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester