Variable PHP et CSS

Résolu/Fermé
clé de 12 Messages postés 131 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 16 janvier 2024 - 29 août 2014 à 13:37
clé de 12 Messages postés 131 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 16 janvier 2024 - 30 août 2014 à 15:39
Bonjour,

Je récupère dans mon fichier index la variable taille de l'écran. J'aimerai intégrer cette information dans mon fichier css pour définir les tailles des TD, UL, des bandeaux, des images background, etc...

Qui connait la syntaxe pour dimensionner des données css en intégrant des variables (session ou php)?
Un exemple des variables à intégrer dans mon CSS :

.menu li li ul{
position:absolute;
margin-left:150px;
margin-top:10px;

Ici par exemple je verrai un truc style margin-left:$largeur/6;
}
.menu li ul li {
width:140px;
}

.menu li{
list-style:none;
width:150px;
height:auto;
display:inline;
display/**/:block;
float:none;
float/**/:left;
margin:0;
padding:0;
}
////////// etc, etc...;
Merci de me donner si possible les syntaxes pour les 2 cas (variables session et variable PHP)....si c'est possible bien sûr.
Cordialement

A voir également:

5 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
29 août 2014 à 13:43
et si tu définissait tes margin en %


margin-left:33%;
0
clé de 12 Messages postés 131 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 16 janvier 2024 1
Modifié par clé de 12 le 29/08/2014 à 15:19
Oui, ça ça marche, mais le but de ma demande est de savoir si on peut et comment déclarer une variable session ou php comme argument dans un fichier CSS (qui n'est par définition pas un fichier php). Mais tu as raison, le % répond à un besoin immédiat mais n'est pas assez précis . Si je veux rajouter un onglet ou 2 dans la barre des menus, le pourcentage changerait. Je voudrais un truc plus souple. Mettre un 25% pour 4 onglets, OK, 20% pour 5, mais si je mets le nombre d'onglets en lecture, ma variable pour UL serait ($longueur/$nb_onglets)
Merci de toutes façons pour ta réponse.
0
dan-b Messages postés 80 Date d'inscription samedi 15 septembre 2012 Statut Membre Dernière intervention 20 octobre 2014 7
29 août 2014 à 15:59
Bonjour,

Il existe des "préprocesseurs" qui permettent de générer des css dynamiques (cf LESS, SASS). Ou on peut tout simplement créer une page style.php. Voir un article sur les deux méthodes http://blog.internet-formation.fr/2013/12/creer-des-css-dynamiques-avec-php-sans-lesscss-ou-scss/

sinon, pour adapter un design aux différents écrans, il y a les media queries https://www.alsacreations.com/article/lire/930-css3-media-queries.html qui permettent de pallier certains défauts avec les largeurs en pourcentage.
0
clé de 12 Messages postés 131 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 16 janvier 2024 1
29 août 2014 à 19:54
Très intéressant, je vais me pencher sur cette solution qui a l'avantage d'allier souplesse et unicité des couches (faux css mais vrai php).
Mais ça ne répond pas à ma question du début : comment insérer une valeurs variable dans du CSS qui est un fichier texte ? Je suis têtu, un vrai bourricot, mais on m'a affirmé que c'était possible, alors pour le fun, j'aimerai savoir.
Merci quand même, je pense que je vais étudier ta solution, j'ai l'avantage d'avoir le temps.
Cordialement
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
29 août 2014 à 21:51
une solution (un peu crade ) serait de mettre la partie concernée de ta feuille de style dans le head de ta page .php

<head>
<link rel="stylesheet" type="text/css" href="xxxxxxxx.css" media="all" /> 

<style type="text/css">
.......
margin-left:<?php echo $variable; ?> px;

</style>
</head>


sinon tu peux aussi regarder du côté de jQuery qui permet de modifier les propriété css au niveau du navigateur, et du même coup lire la résolution et appliquer la formule de calcul.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
clé de 12 Messages postés 131 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 16 janvier 2024 1
30 août 2014 à 15:39
Ouais, finalement, à vous lire tous, je pense que le fichier CSS n'accepte pas de variables et que l'on doit user de variables session ou de simili CSS fait avec du code php, ce qui ne me dérange pas.
Merci à tous
0