Une feuille de style CSS est un complément indispensable à un fichier HTML pour aboutir à la conception d’une page web.
C’est la feuille de style qui, interprétée par le navigateur, permet la transformation du contenu brut du fichier HTML en page agréable à regarder ou à imprimer. En effet, une feuille de style s’applique à un ou plusieurs outils de diffusion : il peut y avoir une feuille de style pour un écran, pour une imprimante, pour un lecteur Braille ...
Un des concepts majeurs des feuilles de style est contenu dans son nom : CSS pour "Cascading Style Sheets" soit "feuilles de style en cascade". Les propriétés attribuées à un élément de la page web seront transmises (ou non) aux éléments qu’il peut lui-même contenir. Pour aboutir à une présentation idéale de votre page, il n’est donc pas nécessaire de définir un style pour chaque élément. Si des règles générales s’appliquent à plusieurs d’entre eux (couleur du texte, marges ...) alors elles seront définies globalement puis, si un élément nécessite certaines spécificités de présentation, des règles le concernant uniquement seront précisées.
Là encore, comme pour le HTML ou le JavaScript, les feuilles de style CSS ne sont rien de plus qu’un fichier en texte brut, parfaitement lisible par le moindre éditeur de texte. Plus encore que pour ces deux langages, le CSS est extrêmement simple à lire : border-size : 1px ; border-radius : 4px ; border-color : red ; donnera à l’élément concerné un cadre rouge d’un pixel d’épaisseur donc les angles (border radius) seront arrondis à 4px.
Cependant, comme pour tous les langages du web qui sont interprétés coté client, par les navigateurs des internautes, il peut y avoir de la part des différents navigateurs un problème d’adaptation ou de respect des standards, qu’ils soient nouveaux ou anciens.
Enfin, l’intérêt de la feuille de style CSS réside aussi dans les possibilités de spécifier quelques critères d’application des styles. C’est la clef principale du "Responsive design", c’est-à-dire l’art d’adapter la présentation d’une page web HTML à l’écran sur lequel elle est regardée , en fonction en particulier du nombre de pixels disponibles en largeur et hauteur.