1. Ellipse adaptative
Fonctionnalité de rayon de bordure :
Peut spécifier les rayons horizontaux et verticaux séparément, ainsi que la valeur. Il peut s'agir d'un pourcentage, utilisez simplement / (barre oblique) pour séparer les deux valeurs (une ellipse de largeur adaptative peut être implémentée).
Vous pouvez également spécifier quatre rayons horizontaux et verticaux avec des angles différents (une demi-ellipse peut être réalisée)
Quart d'ellipse, principalement pour ajustez le rayon horizontal et vertical
Exemple de code :
.wrap{ border-radius: 50% / 30%; width: 60px; height: 80px; background: yellow; } .wrap02{ width: 60px; height: 80px; background: yellow; border-radius: 50% / 100% 100% 0 0; } .wrap03{ width: 60px; height: 80px; background: yellow; border-radius: 100% 0 0 0; }
2. Quadrilatère plat
Doit être appliqué au skewX de la transformation pour la distorsion
Résoudre principalement le problème que le conteneur devient un quadrilatère plat et que le texte et les éléments internes sont affichés verticalement
éléments imbriqués, et les éléments internes peuvent être tordus à l'envers en utilisant l'inclinaison. Les éléments internes imbriqués doivent être bloqués car la transformation ne peut pas être appliquée aux éléments en ligne.
Utiliser des pseudo-éléments pour la distorsion (:avant)
.wrap{ width: 80px; height: 40px; transform: skewX(-45deg); background: yellow; } .wrap>p{ transform: skewX(45deg); } .btn{ position: relative; padding: 10px; } .btn:before{ content: ''; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: -1; background: #85a; transform: skewX(-45deg); }
3. Diamant
Appliquez l'imbrication des éléments, et les éléments extérieurs et intérieurs tournent les uns avec les autres. , Réalisez l'octogone ;
Concevez la largeur maximale de l'élément interne pour qu'elle soit de 100 %, de sorte que l'image entière ne puisse remplir que tout le p extérieur
-
L'attribut scale contrôle le grossissement de son image Par défaut, le point central est l'origine du grossissement (le théorème de Pythagore sera utilisé, ne spécifiez pas d'origine de transformation supplémentaire).
.wrap{ width: 200px; transform: rotate(-45deg); overflow: hidden; } .wrap > img{ transform: rotate(45deg) scale(1.42); max-width: 100%; }
4. Effet de coupe d'angle
En utilisant le dégradé linéaire, vous pouvez définir l'angle, les valeurs multiples et la transparence du dégradé pour y parvenir.
Vous devez également faire attention aux paramètres des attributs background-size et background-repeat pour éviter que les arrière-plans qui se chevauchent n'empêchent l'effet de prendre effet
.wrap{ width: 200px; height: 100px; background: #58a; background: linear-gradient(-135deg, transparent 15px, #58a 0px) top right, linear-gradient(135deg,transparent 15px, #655 0px) top left, linear-gradient(-45deg, transparent 15px, #58a 0px) bottom right, linear-gradient(45deg, transparent 15px, #655 0px) bottom left; background-size: 50% 50%; background-repeat: no-repeat; }
Vous pouvez utiliser border-image pour réaliser une coupe de coin et définir une bordure-image -slice (la bordure de l'image est décalée vers l'intérieur)
border-image utilise svg pour créer des images
border définit la largeur à transparent, plus border-image-slice inward Le décalage crée la bordure et la bordure du coin
background-clip : défini sur padding-box, sinon l'arrière-plan s'étendra jusqu'à la bordure.
.wrapSvg{ border:15px solid transparent; border-image: 1 url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="3" height="3" fill="%2358a"><polygon points="0,1 1,0 2,0 3,1 3,2 2,3 1,3 0,2"/></svg>'); margin-top: 50px; width: 200px; height: 100px; background: #58a; background-clip: padding-box; }
Autres solutions
Utilisez l'attribut clip-path, mais pas entièrement pris en charge
css4 donnera directement l'attribut corner-path pour prendre en charge la coupe de coin
5. Motif trapèze
Comprendre les principes de base de la transformation
a et d représentent la mise à l'échelle et ne peuvent pas être 0 ; c et b contrôlent l'inclinaison ; e et f contrôlent le déplacement
traduction (déplacement) : matrice(1,0,0,1,x,y)
échelle (zoom) : matrice(x,0 , 0,y,0,0);
inclinaison (inclinaison) : matrice(1,tany,tanx,1,0,0), puisque l'entrée est deg (angle) , L'angle doit être converti en valeur radian
-
rotation (rotation) : matrice(cosN,sinN,-sinN,cosN,0,0), l'angle est converti en radian
L'application des valeurs ci-dessus est liée à la valeur de transform-origin, qui est l'origine de la rotation de l'élément de positionnement, qui peut être haut, bas, centre, etc. Trois les systèmes de coordonnées de x, y et z peuvent être spécifiés
perspective : la perspective, ne peut pas être négative, 0 ou pourcentage, ne peut être qu'une valeur numérique
représente la valeur ; distance de l'observateur à l'objet observé
Plus la distance de perspective est éloignée de l'objet, plus l'objet apparaîtra petit
La perspective peut ne doit être défini que sur le parent ou l'ancêtre de l'élément déformé, car le navigateur va La déformation de l'enfant produit un effet de perspective
Il n'y a pas d'attribut d'inclinaison dans la transformation 3D.
六、简单的饼图
动画饼图,效果如下:
实现步骤如下:
画出一个yellowgreen的圆,并利用linear-gradient设置background-image的值,实现两种颜色各显示一半的功能:
然后加入一个伪元素,继承父级(真实元素)的背景色,然后用rotate旋转即可
要利用margin-left让其靠左
利用transform-origin设置其旋转定位点
动画展示代码如下:
@keyframes spin{ to{ transform: rotate(.5turn); } } @keyframes bg{ 50%{ background-color: #655; } } .wrap{ width: 100px; height: 100px; border-radius: 50%; background: yellowgreen; background-image: linear-gradient(to right, transparent 50%, #655 0); } .wrap::before{ content: ''; display: block; margin-left: 50%; background-color: inherit; height: 100%; border-radius: 0 100% 100% 0 / 50%; transform-origin: left; animation:spin 3s linear infinite, bg 6s step-end infinite; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。
更多Forme dapplication des nouvelles fonctionnalités de CSS3相关文章请关注PHP中文网!

À quoi cela ressemble de dépanner l'un de ces problèmes impossibles qui se révèle être quelque chose d'autre à lequel vous n'avez jamais pensé.

@KeyFramesAndcsstransitionsDiffeRinComplexity: @ KeyframesAllowsfordEtailedanimationSequences, tandis que les StransitionShandlesImpLestateChanges.USECSSTRANSITIONSFORHOVEFFECTSLILLOBUTTONCOLORCHANGES, et @ KeyframesFransintricateAralienslikeTatationSpinners.

Je sais, je sais: il y a une tonne d'options de système de gestion de contenu disponibles, et bien que je les teste plusieurs, aucun n'a vraiment été celui, y & # 039; savoir? Des modèles de tarification étranges, une personnalisation difficile, certains finissent même par devenir un tout

La liaison des fichiers CSS à HTML peut être réalisée en utilisant des éléments dans une partie de HTML. 1) Utilisez des balises pour relier les fichiers CSS locaux. 2) Plusieurs fichiers CSS peuvent être implémentés en ajoutant plusieurs balises. 3) Les fichiers CSS externes utilisent des liens URL absolus, tels que. 4) Assurez-vous que l'utilisation correcte des chemins de fichier et de l'ordre de chargement du fichier CSS et optimiser les performances peuvent utiliser le préprocesseur CSS pour fusionner les fichiers.

Le choix de Flexbox ou de la grille dépend des exigences de mise en page: 1) Flexbox convient aux dispositions unidimensionnelles, telles que la barre de navigation; 2) La grille convient aux dispositions bidimensionnelles, telles que les dispositions de magazines. Les deux peuvent être utilisés dans le projet pour améliorer l'effet de mise en page.

La meilleure façon d'inclure des fichiers CSS est d'utiliser des balises pour introduire des fichiers CSS externes dans la pièce HTML. 1. Utilisez des balises pour introduire des fichiers CSS externes, tels que. 2. Pour les petits ajustements, le CSS en ligne peut être utilisé, mais doit être utilisé avec prudence. 3. Les grands projets peuvent utiliser des préprocesseurs CSS tels que SASS ou moins pour importer d'autres fichiers CSS via @Import. 4. Pour les performances, les fichiers CSS doivent être fusionnés et CDN doit être utilisé et compressé à l'aide d'outils tels que CSSNANO.

Oui, vous émeuble-chouchoudion-dimensionnal, flexiblelayAndavigationMenus.2)

À quoi cela ressemble-t-il de refactor votre propre code? John Rhea sépare une vieille animation CSS qu'il a écrite et traverse le processus de réflexion pour l'optimiser.


Outils d'IA chauds

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.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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

Article chaud

Outils chauds

Adaptateur de serveur SAP NetWeaver pour Eclipse
Intégrez Eclipse au serveur d'applications SAP NetWeaver.

SublimeText3 version anglaise
Recommandé : version Win, prend en charge les invites de code !

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

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

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.
