257 votes

Création de coins arrondis à l'aide de CSS

Comment créer des coins arrondis à l'aide de CSS ?

0 votes

Voici une bonne vidéo sur la façon de créer des coins arrondis en utilisant uniquement CSS : < sampsonvideos.com/video.php?video=12 >

0 votes

3 votes

Plus de 200 likes disent que c'est constructif.

105voto

Yaakov Ellis Points 15470

Depuis l'introduction de CSS3, la meilleure façon d'ajouter des coins arrondis à l'aide de CSS est d'utiliser la balise border-radius propriété. Vous pouvez lire la spécification sur la propriété, ou obtenir des des informations utiles sur la mise en œuvre sur MDN :

Si vous utilisez un navigateur qui n'a pas mettre en œuvre border-radius (Chrome pre-v4, Firefox pre-v4, IE8, Opera pre-v10.5, Safari pre-v5), alors les liens ci-dessous détaillent un grand nombre d'approches différentes. Trouvez celle qui convient à votre site et à votre style de codage, et suivez-la.

  1. CSS Design : Création de coins personnalisés et des bordures
  2. CSS Coins arrondis 'Roundup'.
  3. 25 techniques de coins arrondis avec CSS

1 votes

Je trouve que DD_roundies est la solution idéale : dillerdesign.com/experiment/DD_roundies/#nogo

1 votes

@vsync mais ce n'est pas bien supporté dans IE8 dillerdesign.com/experiment/DD_roundies/#supported_browsers

5 votes

Lien utile si vous décidez d'opter pour CSS3 (comme SO) border-radius.com (une autre référence. css3.info/border-radius-pomme-vs-mozilla )

81voto

Jeff Atwood Points 31111

J'ai regardé cela au début de la création de Stack Overflow et je n'ai pas trouvé tout pour créer des coins arrondis qui ne me donnent pas l'impression d'avoir traversé un égout.

CSS3 définit enfin le site

border-radius:

C'est exactement comme ça que vous voulez que ça fonctionne. Bien que cela fonctionne bien dans les dernières versions de Safari et Firefox, mais pas du tout dans IE7 (et je ne pense pas dans IE8) ou Opera.

En attendant, c'est le piratage jusqu'en bas. J'aimerais savoir ce que d'autres personnes pensent être la manière la plus propre de faire cela dans IE7, FF2/3, Safari3 et Opera 9.5 pour le moment

5 votes

"...traversé un égout ?" C'est un peu dur, Jeff. La réponse est "ça dépend". Une seule couleur, un dégradé, ou des boîtes d'ombres portées ? Doivent-elles s'étendre verticalement, horizontalement, ou les deux ? Différentes solutions pour différentes exigences. Plus l'exigence est élevée, plus la solution doit ressembler à un égout.

28 votes

Je préférerais utiliser cette méthode. Si un navigateur ne la prend pas en charge, qui s'en soucie ?

11 votes

Twitter rétrograde la fonction de coins arrondis en coins pointus sur son site web pour les utilisateurs d'IE. Ce n'est pas vraiment un problème.

28voto

Sinan Yasar Points 4525

J'obtiens généralement des coins arrondis juste avec css, si le navigateur ne supporte pas ils voient le contenu avec des coins plats. Si les coins arrondis ne sont pas si critiques pour votre site, vous pouvez utiliser ces lignes ci-dessous.

Si vous voulez utiliser tous les coins avec le même rayon, c'est le moyen le plus simple :

.my_rounded_corners{
   -webkit-border-radius: 5px;
           border-radius: 5px;
}

mais si vous voulez contrôler chaque coin, c'est bien :

.my_rounded_corners{
    border: 1px solid #ccc;

    /* each value for each corner clockwise starting from top left */
    -webkit-border-radius: 10px 3px 0 20px;
            border-radius: 10px 3px 0 20px;
}

Comme vous le voyez, dans chaque ensemble, il y a des styles spécifiques aux navigateurs et sur la quatrième ligne, nous déclarons que le style est standard, ce qui nous permet de supposer que si, à l'avenir, les autres navigateurs (avec un peu de chance, IE aussi) décident de mettre en œuvre cette fonctionnalité, notre style sera prêt pour eux aussi.

Comme indiqué dans d'autres réponses, cela fonctionne parfaitement sur Firefox, Safari, Camino, Chrome.

16voto

Sniffer Points 1852

Si vous êtes intéressé par la création de coins dans IE, ceci peut vous être utile. http://css3pie.com/

0 votes

Cela a complètement fonctionné pour moi, ainsi que la définition des coins -moz etc etc pour les autres navigateurs.

13voto

Lance Fisher Points 13547

Je vous recommande d'utiliser des images de fond. Les autres moyens sont loin d'être aussi bons : Pas d'anticrénelage et balisage inutile. Ce n'est pas l'endroit pour utiliser JavaScript.

1 votes

Selon mon expérience, c'est le javascript qui présente le plus de risques d'échec et de scintillement. tous les plugins jquery que j'ai essayés ont des effets secondaires inattendus.

0 votes

CurvyCorners ( curvycorners.net ) et ShadedBorder ( ruzee.com/blog/shadedborder ) faire gérer la prise en charge de l'anticrénelage. Il existe également des moyens de les utiliser sans balisage supplémentaire, vous pouvez les implémenter avec une classe et le balisage est alors ajouté dynamiquement aux éléments classés. Cela dit, plus je les utilise, plus vous semblez avoir raison... ils sont utiles pour le prototypage mais ajoutent beaucoup de poids supplémentaire au DOM. Maintenant que j'ai ajusté les miens comme je le souhaite, je prévois de les convertir en images.

1 votes

Cette réponse ne contient pas assez de détails pour que quelqu'un puisse mettre en œuvre ce que pense le répondant.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X