28172 sujets

CSS et mise en forme, CSS3

Bonjours,
Je voudrais crée un site web avec plusieurs css suivant les navigateurs.
Du css3 avec mozilla 3.6, opera 9.5 et safari.
Du css2 avec internet explorer et les versions antérieur des autre navigateurs.
Je voudrais faire un script en java ou en php pour comparer si le navigateur est internet explorer ou si mozilla 3.6 ou antérieur etc... même chose pour les autres navigateurs.

Ce script marche mais il n'est pas complet comme je le souhaite.

//modification du css suivant le navigateur
//$_SERVER["HTTP_USER_AGENT"] : variable donnant le navigateur
if (ereg("MSIE", $_SERVER["HTTP_USER_AGENT"])) {
//Internet explorer
echo "<link rel=\"stylesheet\" href=\"rca.ie.css\" type=\"text/css\" />";
}
else {
//Les autres
echo "<link rel=\"stylesheet\" href=\"rca.moz.css\" type=\"text/css\" />";
} 



Si quelqu'un a une solution.
Merci d'avance
Modifié par Heyoan (03 Feb 2010 - 16:43)
Hello represente et bienvenue sur le forum Smiley smile ,

en tant que modérateur, je me dois de te faire remarquer que tu n'as malheureusement pas respecté l'une des Règles de base du forum qui est d'afficher les codes et exemples proprement à l'aide des boutons [ code]... ici ton code HTML, CSS, PHP, etc.[ /code] (sans espace).

upload/1-code.gif

Je te remercie par avance de bien vouloir éditer ton message afin de le rendre conforme à cette règle. Smiley cligne

D'ailleurs, je rappelle que l'Aide (dont le lien est fourni lors de l'inscription) contient des pistes de recherche, des indications sur les règles de vie de la communauté, etc.
Pour ce qui est de ta question seules les versions d'IE sont éventuellement à détecter à l'aide des commentaires conditionnels.

Pour ce qui est du CSS3 il suffit de préfixer les propriétés en question avec -moz ou -webkit qui seront tout simplement ignorées dans les autres navigateurs, de même que les propriétés non implémentées. Voir Osez HTML5 et CSS3 pour des exemples.
Modifié par Heyoan (03 Feb 2010 - 16:40)
Merci pour la réponse,

Le site que je créer actuellement sera extensible suivant la résolution si le navigateur le permet.

Peut-on mettre des conditions dans le css car j'utilise background-size dans des div en % pour mozilla 3.6 et autre.

Mais je voudrais que pour mozilla 3.0 3.5 soit des div en pixel car background-size n'est pas reconnu.

Merci
Modifié par represente (03 Feb 2010 - 16:51)
Merci pour tous les liens.

J'avais déjà vu pratiquement tous tutoriel mais dans aucun cas on traite ce que je souhaite faire, c'est pourquoi je suis le forum.

Je résume :

Je veux faire un site qui s'adapte suivant le navigateur et la résolution.

Enfaite je veux faire 2 css
- un css 2 pour qui soit compatible avec tous les navigateur par défaut avec des div en px
- un css3 compatible avec mozilla 3.6 etc avec des div en % et des background-size ...

C'est pourquoi il faut que avant que la page soit chargé effectuer un test si internet explorer si mozilla 3.6 si mozilla 3.0 etc pour que le css compatible soit utilisé


Merci
represente a écrit :
- un css 2 pour qui soit compatible avec tous les navigateur par défaut avec des div en px
- un css3 compatible avec mozilla 3.6 etc avec des div en % et des background-size ...

C'est pourquoi il faut que avant que la page soit chargé effectuer un test si internet explorer si mozilla 3.6 si mozilla 3.0 etc pour que le css compatible soit utilisé
En fait, non, ce n'est absolument pas nécéssaire, les propriétés CSS3 qui ne sont pas reconnues par un navigateur seront simplement ignorée. Tu peux créer ta feuille de style "de base" et y ajouter les propriétés CSS3, en t'assurant que cela ne cause pas de problème aux auters navigateurs (normalement, ça ne devrait pas).