Récemment, j'ai commencé à utiliser le calc(...) la méthode dans le CSS. J'ai vite appris que le code tel que: width: calc(100%-2)
ne fonctionnera pas, même si l'ajout d'un espace blanc avant et après l' -
opérateur de résoudre le problème et le calc méthode va fonctionner correctement.
Après avoir fait un peu de recherche, j'ai trouvé plusieurs posts de blog de référence que le blanc de l'espace est nécessaire, et de nombreux ont même fait de la spécificationCSS3 8.1.1) qui stipule:
En outre, l'espace est requise sur les deux côtés de l' + et - des opérateurs. (*Et / operaters peut être utilisé sans les espaces autour d'eux.)
Maintenant, clairement, le spec nous dit que ces opérateurs doivent être enveloppé dans un espace blanc, mais pourquoi? J'ai lu plus loin dans la spécification (par le biais de sections 8.1.2-4) et si c'est expliqué dans ces parties, je ne comprends pas le raisonnement.
En termes simples, quelqu'un pourrait-il expliquer pourquoi il a été précisé qu' calc(100% - 1)
ou même calc(100%/2)
est acceptable de la syntaxe, mais pas calc(100%-1)
?