Avatar billede kr-data Nybegynder
20. oktober 2003 - 15:19 Der er 20 kommentarer og
1 løsning

Inkludere CSS uden for head

Hej

jeg har det problem at jeg har et CSS dokument, som jeg gerne vil inkludere i min body, det er kort sagt fordi jeg bruger et dokument, som så inkluderer indholdet i bodyen, men da jeg vil spare brugeren for loadtider og derfor kun vil loade css-dokumentet hvis det skal bruges.

Hvordan gøres det, så html standarden overholder, og så det virker (uanset browser)?
Avatar billede roenving Novice
20. oktober 2003 - 15:22 #1
Et <style>-tag hører hjemme i <head>-sektionen ...
Avatar billede kr-data Nybegynder
20. oktober 2003 - 15:23 #2
problemet er bare at jeg skal scripte en h*l*ns masse hvis den skal loades i head. Er der ingen vej uden om?
Avatar billede kr-data Nybegynder
20. oktober 2003 - 15:25 #3
må jeg godt linke til flere stylesheets i head hvis der ingen vej er uden om (det skaber en smule mere struktur!)
Avatar billede nak-m Nybegynder
20. oktober 2003 - 15:25 #4
hvad holder dig fra at inkludere det i <head> ?
Avatar billede roenving Novice
20. oktober 2003 - 15:26 #5
Ikke hvis du vil undgå browser-problemer, for visse browsere tager det meget alvorligt, mens IE nærmest er ligeglad ...

-- men à propos load-tider, vil en load af et nyt stylesheet betyde, at browseren totalt skal genopbygge sit css DOM-træ !-)
Avatar billede kr-data Nybegynder
20. oktober 2003 - 15:27 #6
det er kort sagt at spare brugeren mest muligt for loadtider (ved godt det er lidt kynisk, men "mange bække små gør en stor å"!)
Avatar billede nak-m Nybegynder
20. oktober 2003 - 15:27 #7
<style> hører som roenving siger kun hjemme i <head>
og ja du må godt linke til flere stylesheets :)
Avatar billede roenving Novice
20. oktober 2003 - 15:28 #8
-- og du må linke til alle de stylesheets du kunne ønske dig, men vær opmærksom på at det samme problem opstår (med DOM-træet), hvis du ændrer klasse på bare eet tag ...
Avatar billede kr-data Nybegynder
20. oktober 2003 - 15:28 #9
Det vil kort sagt sige, at jeg KUN må bruge et stylesheet og det SKAL ligge i head?
Avatar billede kr-data Nybegynder
20. oktober 2003 - 15:29 #10
(ved godt jeg virker lidt dum, er lidt n00b når det gælder html standarden og CSS!)
Avatar billede bamzen Nybegynder
20. oktober 2003 - 16:12 #11
Du kunne også loade dit stylesheet vha javascript ... er ikke sikker på om det virker i andet end ie

<script type="text/javascript">
@import url(mitstylesheet.css)
</script>
Avatar billede roenving Novice
20. oktober 2003 - 16:14 #12
>>bamzen ?-)

Den hedder da:

<style type="text/css">
@import url(mitstylesheet.css)
</style>
Avatar billede kr-data Nybegynder
20. oktober 2003 - 16:18 #13
hmm, jeg har fundet ud af hvordan jeg gør det. Ikke ultimativt, men jeg putter det i et dokument (eller mere præcist, jeg laver en php der inkluderer dem alle i  scriptet, men for browseren vil det ligne 1 dokument!)
Avatar billede kr-data Nybegynder
20. oktober 2003 - 16:24 #14
bare for god ordens skyld, i kan se hvordan det virker her www.tka-mobildisco.dk

Men Roenving smid et svar, det var dig der gav mig idéen. Ud over din pts, så mange tak. :)
Avatar billede roenving Novice
20. oktober 2003 - 16:29 #15
Jamen, velbekomme '-)
Avatar billede roenving Novice
20. oktober 2003 - 16:35 #16
-- og tak for points ;~}
Avatar billede kr-data Nybegynder
20. oktober 2003 - 16:37 #17
Du behøver ikke sige tak, det er det mindste jeg kan gøre, når du hjælper :)
Avatar billede =maddog= Nybegynder
20. oktober 2003 - 20:43 #18
man kan for så vidt godt linke nye stylesheets i DOM browsere

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>Untitled</title></head>
<body>
<script>
document.head=document.getElementsByTagName("HEAD")[0];
sheet=document.createElement("LINK");
sheet.setAttribute("rel","stylesheet");
sheet.setAttribute("type","text/css");
sheet.setAttribute("href","file:///H|/codestore/code/HTML_CSS/ipc.css");
document.head.appendChild(sheet);
</script>
</body>
</html>

Hvor pænt det så lige er skal jeg lade være usagt, og jeg vil normalt heller ikke anbefale <script> uden for <head>.
Avatar billede kr-data Nybegynder
21. oktober 2003 - 14:38 #19
Hmm, jeg har gjort det sådan at jeg har style.php, som så laver include på de forskellige stylesheets, så jeg har overskueligheden, men for klienten vil dette blot ligne et almindeligt stylessheet.
Avatar billede =maddog= Nybegynder
21. oktober 2003 - 15:01 #20
jamen det er også langt den bedste løsning. jeg ville blot pointere at man (af omveje) godt kan inkludere et stylesheet i body, i henhold til dit oprindelige spørgsmål.
Avatar billede kr-data Nybegynder
21. oktober 2003 - 17:15 #21
ok, det er helt i orden
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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

IT-JOB

Capgemini Danmark A/S

Microsoft AI Solution Architect

AL Sydbank

AI Engineer

Rambøll Management Consulting

Senior Software Engineer

Politiets Efterretningstjeneste

AI/ML udvikler i PET