Avatar billede mik789 Nybegynder
24. februar 2003 - 08:16 Der er 8 kommentarer og
2 løsninger

php i ekst. stylesheet

Man kan nemt bruge php i internt css (f.eks. til browserafhængige mål), men hvad med i et eksternt css? Her kan man vel ikke bruge php, da filen jo skal hedde noget med .css og vel derfor ikke bliver læst af php parseren. Eller hvad? Er det alligevel muligt?
Avatar billede phliplip Nybegynder
24. februar 2003 - 08:25 #1
Hej mik789 !

Enten sætter du din server op til at PHP skal parse .css filer !

Men eftersom du nok ligger på et webhotel, så kan du bare ændre filnavnet på dit style sheet til .php !

// Philip
Avatar billede phliplip Nybegynder
24. februar 2003 - 08:28 #2
Og så lige ændre:
<link rel="stylesheet" type="text/css" href="styles.css">

<link rel="stylesheet" type="text/css" href="styles.php">

/Philip
Avatar billede mik789 Nybegynder
24. februar 2003 - 08:28 #3
phliplip> OK? det kan man bare gøre? og det giver ingen problemer for html koden at style'ne er angivet i et ekst. stylesheet der hedder .php. Det troede jeg ikke man kunne
Avatar billede mik789 Nybegynder
24. februar 2003 - 08:29 #4
men nåja, det kan vel lade sig gøre fordi man med type angiver hvad det drejer sig om.
Avatar billede Slettet bruger
24. februar 2003 - 09:19 #5
øøh eller omrineg css koden med <style type="text/css"></style> og include den i head med include("css.php"); det vil jo fungere ligesom eksternt
Avatar billede phliplip Nybegynder
24. februar 2003 - 14:03 #6
Egentlig vil det være smartere at, som westhi siger, include() filen ! For så kan du også bruge variabler du har lavet i ovenstående kode, så som timestamps og andet, i din css fil uden at skulle lave dem igen !

Så skal du bare sætte <style type="text/css"></style> ind i din css fil eller skrive <style type="text/css"><? include("styles.php"); ?></style> i det document du skal bruge det !

Men det andet kan også godt lade sig gøre ! Da php parses på serveren og css parses i browseren ! og browseren er ret lige glad med om filen hedder .css, .php eller .dronning_margrethe_den_anden !!
Avatar billede mik789 Nybegynder
24. februar 2003 - 17:30 #7
hej begge> jeg er ikke helt sikke på hvad I vil have mig til. jeg har forsøgt i løbet af dagen med forskellige muligheder. Hvis jeg i <head></head>skriver:

<style type="text/css">
<?php include("styles.php"); ?>
</style>

så virker det i både IE og NS, men hvis jeg i stedet laver det eksternt, sådan:

<link rel="stylesheet" type="text/css" href="styles.php" />

så virker det kun i IE. NS får ikke fat i stylesheetet.

Men jeg vil godt lave det som et eksternt css. Det er nemlig meget langt, og jeg vil godt være fri for at man skal have det hele i starten af dokumentkoden.

Jeg er ikke med på hvad Phliplip anbefaler til sidst. Vil du have at jeg skal sætte <style> tags ind i den eksterne css? det er da imod reglerne, (og det virker heller ikke)
Avatar billede Slettet bruger
24. februar 2003 - 18:34 #8
jeg vil ha at du sætter style tags i den eksterne som kalder *.php og includer ganske normalt i head med

<? include("style.php"); ?>

det vil fungere fint :)
Avatar billede mik789 Nybegynder
25. februar 2003 - 00:48 #9
jeps, det fungerer du. det var også sådan jeg gjorde tidligere på dagen. grunden til at det ikke virkede i NS var nok snarere fordi jeg havde forkert doctype i dokumentet og andre fejl. i samme omgang forsøgte jeg med en ekstern javascript fil med indbyggede php elementer. også det fungerer fint.

tak til jeg begge ;-)
Avatar billede mik789 Nybegynder
25. februar 2003 - 01:43 #10
hvis nogen vil se med i koden, kan de tjekker her:

www.dahr.dk/Web/php
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