J'ai joué avec beaucoup d'outils utiles comme Haml et moins qui donne à CSS la capacité de créer des variables. Je me demande pourquoi cette fonctionnalité n'était pas incluse lorsque CSS a commencé. Est-ce trop redondant ou n'est pas vraiment nécessaire pour une raison quelconque? P>
4 Réponses :
Je pense que c'est parce que CSS n'a pas été vraiment perçu comme un langage de programmation. HTML n'a pas non plus de variables. Les variables ne sont souvent considérées que comme si nécessaire si vous allez les manipuler après les avoir créées. P>
Je suis d'accord. CSS a été vraiment simple et accessible à la majorité des gens. Bien que maintenant, je le vois en plus d'un langage de programmation, car CSS a introduit ses premières classes interactives. Quelque chose aussi simple que: Hover va obtenir beaucoup plus de fonctionnalités avec les transitions CSS et telle. Autant que j'apprécie, je pense que HTML et CSS doivent être conservés comme la couche de mise en page de conception, et une langue distincte (JavaScript) doit être utilisée pour des interactions sur une page Web.
@Danixd: Je suis d'accord, pour la plupart. Est-il possible d'intégrer JavaScript dans une feuille de style, cependant? Parce que je peux voir comment cela pourrait avoir une utilité potentielle.
@Jab: En fait, il est préférable de ne pas mélanger JavaScript et CSS. JavaScript peut être désactivé sur le navigateur d'utilisateur et cela signifierait un style brisé pour le site ... un désordre très laid. D'autre part, vous pouvez utiliser un langage côté serveur tel que php pour cela (regardez ma réponse).
@ALERTY, CSS peut être désactivé aussi
@Malfist: Et cela créerait un désordre encore plus grand;)
@Malfist: En fait, je suis plutôt impressionné qu'il est possible de transformer CSS. CSS ne représente aucun risque de sécurité (dont je suis au courant), car il s'agit d'une feuille de style et n'a rien à voir avec le langage de programmation.
C'est pour l'accessibilité qu'il est capable d'être désactivé. Vous pouvez réellement spécifier CSS dans le navigateur qui remplacera quoi que ce soit sur la page. De retour Quand je lisais beaucoup de choses en ligne pour les cours, je remplacerais les couleurs de la page pour que cela ressemble plus au thème Zenburn qui est beaucoup plus facile à vos yeux.
+1 pour une bonne question. Ce que vous demandez n'est pas redondant et est certainement au sommet de la plupart des listes de souhaits des pratiquants de CSS (avec la nidification du sélecteur). P>
Je pense que c'est un autre cas d'une norme très compliquée qui a rampé à la ligne d'arrivée pour sa première version, puis pour une raison ou une autre, c'était trop d'effort pour ajouter certaines fonctionnalités très agréables à avoir . La cascade elle-même doit avoir été une bête pour les concepteurs d'accéder aux architectes et aux navigateurs. P>
Bert Bos a écrit sa position dans Pourquoi les "variables" dans CSS sont nuisibles , l'autre côté est bien représenté par CSS Les variables sont l'avenir . P>
Les arguments de BOS vont de faibles à volus. p>
"# Nombre de feuilles de style CSS: 25725", "# Nombre de feuilles de style non vides: 24805" Y a-t-il un but pour ces feuilles de style 920?
non. N'avez-vous jamais vu un programmateur négligent supprimez les dernières lignes restantes d'un fichier et laissez le fichier au lieu de la supprimer? ;)
@Jab Cela signifie qu'il utilise un échantillon non représentatif.
Feuilles de style en cascade (CSS) n'est pas une langue de programmation. Au début, CSS a été développé comme moyen de créer une approche cohérente pour fournir des informations de style pour les documents Web. Cet objectif n'a pas changé depuis CSS1. Il est utilisé pour décrire la sémantique de présentation d'un document pour certaines langues de balisage (HTML, XHTML, XML, etc.). P>
Qu'est-ce qui est génial, c'est qu'il est possible de créer des variables! Une approche consisterait à utiliser un langage latéral du serveur tel que PHP et créer une "CSS dynamique". Maintenant, il y a plusieurs façons de le faire et voici quelques sites à ce sujet ... P>
Je trouve utile d'utiliser "CSS dynamique". Voici quelques exemples: vous pouvez permettre aux utilisateurs d'un site de modifier certains aspects tels que la taille de la police, vous pouvez modifier le style du site encore plus facilement, vous pouvez proposer différents thèmes de style pour un site, etc. Les possibilités sont infinies. p>
Je ne sais pas, mais je pense que c'est l'Asinine CSS n'a pas commencé avec le centre div horizontalement et verticalement. Même PowerPoint a cela!
@mcandre: pour le centrage horizontal: marge: 0 auto; Et pour la verticale, il y a quelques façons de le faire: blog.themeforest. Net / Tutoriels / Vertical-Centrage-avec-CSS
@ALERTY: Ce sont des hacks. Themeforest donne cinq exemples, car aucun d'entre eux n'est standard. Clairement, les concepteurs de CSS ne pensaient pas que le centrage était une caractéristique nécessaire.
@mcandre: Ce ne sont pas des hacks, sauf de ce qui est fait pour IE (qui suit rarement les normes de toute façon).
@MCandre: Avant de dire que les concepteurs de CSS ne pensaient pas à quelque chose, allez lire des normes W3C sur CSS. w3.org/style/examples/007/center#vertical
"Le niveau CSS 2 n'a pas de propriété pour centrer des choses verticalement. Il y aura probablement un au niveau du CSS 3." Le mot-clé est "probablement". Ils ne pensent toujours pas que ce soit aussi important. Et l'exemple donné est un autre hack. En utilisant l'affichage: cellule de table, CSS revient aux tables HTML de l'ancienne école. Suis-je le seul à trouver ce risible?
@mcandre: L'utilisation d'une combinaison de propriétés est-elle un piratage CSS à vous?
@ALERTY: Oui, car il ne faut pas nécessairement être une combinaison de propriétés. L'espacement vertical et horizontal se produit chacun sur un seul axe, une dimension unique, un scalaire, une propriété, un atome de description. Par un raisonnement humain mathématique, logique et conventionnel, ces caractéristiques unididimensionnelles doivent être configurées par des attributs de CSS unique.
@mcandre: Le concept de feuilles de style en cascade est de permettre une flexibilité. Une cascade de propriétés, en d'autres termes, une combinaison de propriétés un sur l'autre permettra au concepteur / développeur Web cette flexibilité. Par conséquent, une combinaison de propriétés n'est pas un piratage, mais l'essence de la liberté que l'on puisse utiliser pour créer de merveilleuses créations et la définition de CSS.
@mcandre: il y a une propriété verticale-aligner. Beaucoup ne savent pas comment l'utiliser correctement ou savoir quand l'utiliser. Une des raisons est que cela peut spécifier au moins deux comportements différents en fonction de son utilisation. Quoi qu'il en soit, il existe de nombreuses façons de centrer verticalement ce que l'on souhaite aligner verticalement et il est préférable, à mon avis, de donner une liberté de faire ce qu'ils souhaitent que de forcer une seule propriété.
Par cette logique, il devrait y en avoir un, cent, n'importe quel nombre de façons d'effectuer une tâche simple. Ce n'est pas un exemple de liberté. C'est une autre machine Rube Goldberg.
@mcandre: Peut-être que vous ne pouvez pas voir l'art de l'expression dans une machine Rube Goldberg et ne peut ni le voir dans CSS. Je suis libre d'exprimer la conception que je souhaite avec CSS. Le problème est l'interprétation différente de celui-ci par les nombreux navigateurs disponibles. Vous devez également noter que la mise en page HTML n'a pas été conçue pour spécifier le comportement vertical. Il échoue selon la largeur et le contenu s'écoule à une hauteur appropriée en fonction de la largeur disponible.
Oui, les machines Rube Goldberg sont artistiques. Ils sont censés être. La spécification CSS n'est pas censée être artistique. Les soirées mêmes d'un pinceau soient-elles sculptées?