if Safari

Tags:    javascript

hello :-)

jeg står og skal indsætte et stykke CSS som kun skal bruges til safari.

jeg fandt dette javascript på nettet:
http://www.quirksmode.org/js/detect.html

men jeg kan ikke se hvor jeg kan indsætte document.write henne i tilfælde af safari.

nogen der kan hjælpe?






8 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
jeg mener safari fanger ::root som ie fanger * html.



<span class="red">rød i safari, blå i andre</span>

.red
{
color: blue;
::root color: red;
}

Hvis du gerne vil seperere dit safri css kan du wrappe et ark ind i:

@media screen and (-webkit-min-device-pixel-ratio:0){

.style1 {}

}

På samme måde kan du:

isSafari3 = false;
if(window.devicePixelRatio)
isSafari3 = true;



/J

/J



Indlæg senest redigeret d. 06.04.2009 15:24 af Bruger #5789
Svaret kommer helt an på hvad det er du vil indsætte. Hvis du kan undgå det bør du normalt ikke tjekke på browseren men direkte på den funktionalitet du vil bruge.

Jeg vil tro Jokke Jensens forslag også vil fange browsere, som er baseret på samme motor som Safari, så hvis det virkeligt er Safari du vil teste for dur de nok ikke.



af.. erfaring, virker de nu fint..

/J



Jeg testede lige, Jokke, og Google Chrome reagerer på både din @media og din if(devicePixelRatio), så de dur ikke. Chrome reagerede ikke på ::root, så hvis den virker i Safari, kan det måske bruges (Jeg har ikke testet i Safari).



Jeg har søgt efter et hack til safari 3.0, men jeg kunne ikke finde noget.
Det virkede fint det der @media.

tak for hjælpen, kan godt se problematikken. Men det er ikke js jeg skal bruge det til, men CSS.

jeg ville bare bruge det script til at finde safari generelt. men det andet er perfekt.

thanks Jokke!





::root kunne jeg ikke få til at virke i SF3.0



og jeg kan godt se at Chrome reagerer, der står også i artiklen omkring @media at Chrome lytter med.




Brug lidt server kode til at servere det rigtige CSS fil.
Hvis gør det kan du også lave on-fly komprimering, hvilket så vil svare til at du læser den pæne udgave, mens klienten får den komprimerede udgave. Båndbredde sparet og hurtigere loadtid er vundet. :)



t