Gå til innhold

phpkode for å definere stylesheet [løst]


Anbefalte innlegg

Skrevet (endret)

Halla.

Jeg vet det går ann å bruke php for å definere forskjellige styelsheets etter hvilken nettleser man bruker, men husker ikke hvordan og finner det ikke igjen noen plass.

 

Noen som kan hjelpe meg?

 

edit: endret emnetittel

Endret av harrir
Videoannonse
Annonse
Skrevet

Kan du bruke noe sånt?

<?php

$browser = $_SERVER['HTTP_USER_AGENT'];

if($browser == "MSIE")
{
include("stylesheet_for_ie");
}

?>

Skrevet (endret)

ja det er noe sånn jeg er ute etter.

hvordan brukes den i praksis i koden til sida?

tenker på hvordan det, koden html+php, vil se ut for å få den til å bruke den definerte til ie og den andre til andre nettlesere.

 

edit: tenker å bruke ekstern cssfil.

Endret av harrir
Skrevet (endret)

<?php

 

$browser = $_SERVER['HTTP_USER_AGENT'];

 

if($browser == "MSIE")

{

echo '<link rel="stylesheet" src="stylesheet_for_ie.css" type="text/css" />';

}

 

?>

 

opsis

Endret av Ståle
Skrevet
<?php

 

$browser = $_SERVER['HTTP_USER_AGENT'];

 

if($browser == "MSIE")

{

echo '<link rel="stylesheet_for_ie.css" type="text/css" />';

}

 

?>

8203598[/snapback]

må man ikke ha en else() etter det hvis det ikke er IE?

Skrevet

Jo, det er en fordel det.

 

<?php

$browser = $_SERVER['HTTP_USER_AGENT'];

if($browser == "MSIE")
{
echo '<link rel="stylesheet" href="style_ie.css" type="text/css" />';
}
else {
echo '<link rel="stylesheet" href="style.css" type="text/css" />';
}
?>

Skrevet
Kan du bruke noe sånt?

<?php
$browser = $_SERVER['HTTP_USER_AGENT'];
if($browser == "MSIE")
{
include("stylesheet_for_ie");
}
?>

8202464[/snapback]

$_SERVER['HTTP_USER_AGENT'] er ikke nok. Den spyr ut en hel haug med tekst som kan være forskjellig fra nettleser til nettleser. Jeg har i tillegg ikke sett én output som kun sier 'MSIE'.

Men du kan nok få det til med get_browser().

Skrevet

Eller hvis du BARE skal ha egendefinert for IE, så er vel

sånne derre (husker ikke hva det heter)

<!--[if lte IE 7]>
<link rel="stylesheet" type="text/css" media="screen" href="inc/css/iestyle.css" />
<![endif]-->

Skrevet
Trodde man ikke kunne plassere php koder i header jeg..

Så ville heller godt for løsingen Ståle kommer med her..

8207474[/snapback]

Selvfølgelig kan det være PHP-kode i <header>.
  • 4 uker senere...
Skrevet

hehe, ja kan jo det. glemte det helt vekk.

Det jeg har gjort er å lage en testside for å se hva get_browser spytter ut for noe, men det er ikke noe output i det hele tatt. Jeg har lest det som står på php.net om det og det eksempelet de viser der(som skal være det jeg bruker) får de en haug med output.

 

<?php
$browser = get_browser(null, true);
echo($browser);
?>

Skrevet (endret)

Det holder nok ikke hvis du har lest denne:

Kan du bruke noe sånt?

<?php
$browser = $_SERVER['HTTP_USER_AGENT'];
if($browser == "MSIE")
{
include("stylesheet_for_ie");
}
?>

8202464[/snapback]

$_SERVER['HTTP_USER_AGENT'] er ikke nok. Den spyr ut en hel haug med tekst som kan være forskjellig fra nettleser til nettleser. Jeg har i tillegg ikke sett én output som kun sier 'MSIE'.

Men du kan nok få det til med get_browser().

8204039[/snapback]

Men hvis jeg skulle ha brukt $_SERVER['HTTP_USER_AGENT'], hvordan skulle jeg i så fall gjort det?

Endret av harrir
Skrevet

get_browser() returnerer et objekt eller et array. I den koden du har der (get_browser(null, true)) returnerer den et array.

Du kan ikke bruke echo til å skrive ut et array. Hvis du ser på eksempelet på php.net så bruker de print_r() for å skrive ut arrayet.

Skrevet (endret)

Isåfall kan du gjøre det enkelt med JavaScript:

<script type="text/javascript">

var browser = navigator.appName;
if(browser == 'Microsoft Internet Explorer')
{
   document.write("<link rel='stylesheet' type='text/css' href='ie_style.css'>");
}

else
{
   document.write("<link rel='stylesheet' type='text/css' href='style.css'>");
}

</script>


 

Legg den i head-seksjonen hvor du vanligvis ville lagt stilarket ;)

Endret av -Magne-

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...