Comment créer une forme de triangle en utilisant des CSS purs?
Jul 31, 2025 pm 12:43 PM要用純CSS創(chuàng)建三角形,最常用的方法是利用邊框特性。1. 設(shè)置元素寬高為0,僅通過邊框撐起空間;2. 將不需要顯示的邊框設(shè)為transparent;3. 改變某一邊框顏色決定三角形方向,如border-bottom控制向上三角形;4. 可使用transform實(shí)現(xiàn)更復(fù)雜效果,如旋轉(zhuǎn)或動畫。例如,向右三角形設(shè)置border-left有顏色,其他邊框透明,而transform配合偽元素適合制作圖標(biāo)或箭頭。
要用純 CSS 創(chuàng)建一個(gè)三角形,其實(shí)方法很直接:利用邊框(border)的特性來實(shí)現(xiàn)。核心思路是把元素的內(nèi)容區(qū)域縮為 0,再通過設(shè)置不同顏色或透明的邊框來形成三角形狀。

下面來看看幾種常見做法和使用場景。
利用 border 屬性創(chuàng)建基本三角形
這是最常用也是最簡單的方式。原理是讓一個(gè) div 的寬高為 0,然后給它加上不同方向的邊框,隱藏不需要的部分。

.triangle { width: 0; height: 0; border-left: 50px solid transparent; border-right: 50px solid transparent; border-bottom: 100px solid red; }
這樣就能畫出一個(gè)紅色向上的三角形。你可以調(diào)整邊框大小和顏色來改變形狀和樣式。
關(guān)鍵點(diǎn):

- 把寬高設(shè)為 0,只靠邊框撐起空間
- 不需要顯示的邊框設(shè)為
transparent
- 改變哪一邊的邊框顏色,就能決定三角形朝哪個(gè)方向
創(chuàng)建不同方向的三角形
只需要調(diào)整哪一邊有顏色,其他方向設(shè)為透明即可:
- 向上:
border-bottom
有顏色 - 向下:
border-top
有顏色 - 向左:
border-right
有顏色 - 向右:
border-left
有顏色
比如向右的三角形可以這樣寫:
.triangle-right { width: 0; height: 0; border-top: 50px solid transparent; border-bottom: 50px solid transparent; border-left: 100px solid blue; }
使用 transform 模擬更復(fù)雜的三角形效果
雖然 border 方法已經(jīng)夠用,但如果你想做斜角、旋轉(zhuǎn)或者動畫效果,可以用 transform
配合偽元素來實(shí)現(xiàn)。
例如:
.arrow { width: 20px; height: 20px; background-color: green; transform: rotate(45deg); position: relative; }
配合偽元素還可以做出帶邊框的三角箭頭等復(fù)雜圖形。這種方式適合在圖標(biāo)或提示組件中使用。
基本上就這些方法了。最常用的還是 border 實(shí)現(xiàn),簡單又兼容性好;如果想做動畫或更精細(xì)的樣式,可以考慮 transform 或 SVG 方案。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

AutoPrefixer est un outil qui ajoute automatiquement les préfixes des fournisseurs aux attributs CSS en fonction de la portée du navigateur cible. 1. Il résout le problème de maintenir manuellement les préfixes avec des erreurs; 2. Travaillez le formulaire de plug-in PostCSS, analyse CSS, analysez les attributs qui doivent être préfixés et générer du code en fonction de la configuration; 3. Les étapes d'utilisation incluent l'installation de plug-ins, la définition de la liste de navigateurs et leur permettant dans le processus de construction; 4. Les notes ne comprennent pas manuellement les préfixes, le maintien des mises à jour de la configuration, les préfixes pas tous des attributs, et il est recommandé de les utiliser avec le préprocesseur.

TOCREATESTICKYHEADERSERSANDFOOTERS WITHCSS, USEPOSITION: StickyforhederswithTopValueAndz-Index, assurant leparentContainerson’trestrictit.1.Forstickyheders: SetPosition: Sticky, Top: 0, Z-index, AndbackgroundColor.2

Il existe trois fa?ons de créer un rotateur de chargement CSS: 1. Utilisez le rotateur de base des frontières pour obtenir une animation simple via HTML et CSS; 2. Utilisez un rotateur personnalisé de plusieurs points pour atteindre l'effet de saut à travers différents temps de retard; 3. Ajoutez un rotateur dans le bouton et basculez les classes via JavaScript pour afficher l'état de chargement. Chaque approche souligne l'importance des détails de conception tels que la couleur, la taille, l'accessibilité et l'optimisation des performances pour améliorer l'expérience utilisateur.

Mobile-FirstcssDesigrequequetsettingTheViewportMetatag, UsingrelativeUnits, StylingFromsMallScreensup, OptimizingTypographicAndTouchtarget.First, addtiControlsaling.second, use%, em, orreminsteadofpixel

Pour créer une disposition de grille réactive intrinsèque, la méthode principale consiste à utiliser le mode répétition de CSSGrid (Auto-Fit, Minmax ()); 1. Définir la grille-template-colonnes: répéter (Auto-Fit, Minmax (200px, 1fr)) pour laisser le navigateur ajuster automatiquement le nombre de colonnes et limiter les largeurs minimales et maximales de chaque colonne; 2. Utiliser l'espace pour contr?ler l'espacement de la grille; 3. Le conteneur doit être réglé sur des unités relatives telles que la largeur: 100%, et utiliser la taille de la bo?te: Border-Box pour éviter les erreurs de calcul de la largeur et les centrer avec la marge: auto; 4. Définissez éventuellement la hauteur de la ligne et l'alignement du contenu pour améliorer la cohérence visuelle, comme la ligne

Pour rendre l'intégralité de la disposition de la grille centrée dans la fenêtre, elle peut être réalisée par les méthodes suivantes: 1. Utilisez la marge: 0Auto pour atteindre le centrage horizontal, et le conteneur doit être défini pour définir la largeur fixe, qui convient à la mise en page fixe; 2. Utilisez Flexbox pour définir les propriétés de justification et d'alignement des éléments dans le récipient extérieur, et combinez la hauteur min: 100VH pour atteindre le centrage vertical et horizontal, qui convient aux scénarios d'affichage plein écran; 3. Utilisez la propriété Place-Items de CSSGrid pour se concentrer rapidement sur le conteneur parent, ce qui est simple et a un bon soutien des navigateurs modernes, et en même temps, il est nécessaire de garantir que le conteneur parent a une hauteur suffisante. Chaque méthode a des scénarios et des restrictions applicables, choisissez simplement la solution appropriée en fonction des besoins réels.

FeatureSectionIncSsusing @ supportScheCkSifabrowSerSupportsaSaspecificfEATUREBOreApplyingreatedStyles.1.ituseSConditionalcSsblocksbasedOnproperty-Valuepraire, telshas @ supports (affichage: Grid).

Pour faire face à la compatibilité du navigateur CSS et aux problèmes de préfixe, vous devez comprendre les différences de prise en charge du navigateur et utiliser raisonnablement les préfixes des fournisseurs. 1. Comprendre les problèmes communs tels que Flexbox et le support de la grille, Position: Sticky Invalid et les performances d'animation sont différentes; 2. Vérifier l'état du support de la fonction de confirmation de Caniuse; 3. Utilisez correctement -webkit-, -moz-, -ms-, -o- et autres préfixes du fabricant; 4. Il est recommandé d'utiliser AutopRefixer pour ajouter automatiquement les préfixes; 5. Installez PostCSS et configurez le navigateur pour spécifier le navigateur cible; 6. Gérer automatiquement la compatibilité pendant la construction; 7. Les fonctionnalités de détection modernizr peuvent être utilisées pour les anciens projets; 8. Pas besoin de poursuivre la cohérence de tous les navigateurs,
