Home >Web Front-end >CSS Tutorial >CSS drawing fan pattern
This time I will bring you Css to draw a fan-shaped pattern. What are the precautions for drawing a fan-shaped pattern with Css? The following is a practical case, let's take a look.
Reading this article requires basic mathematical knowledge: central angle, radian system, trigonometricfunction.
We have worked hard to achieve the following effects:Progress Bar, just three steps!
span { width: 0; height: 0; border: $radius solid transparent; $borderWidth: tan(pi() / $count) * $radius; border-left-width: $borderWidth; border-right-width: $borderWidth; }Students who are not good at mathematics, please educate yourself...Special handling is required when $count is 1 or 2, because tan(PI) and tan(PI / 2) are Infinite value. If you don’t understand, please study the tangent function image:
span { @if $count == 1 { width: $diameter; height: $diameter; } @else if $count == 2 { width: $diameter; height: $radius; } @else { width: 0; height: 0; border: $radius solid transparent; $borderWidth: tan(pi() / $count) * $radius; border-left-width: $borderWidth; border-right-width: $borderWidth; } }Finally, copy and rotate the sector units one by one:
@for $index from 0 to $count { span:nth-child(#{$index + 1}) { $transform: translate(-50%, 0) rotate(360deg / $count / 2 + 360deg * $index / $count); $origin: if($count == 2, bottom, center); -webkit-transform: $transform; transform: $transform; -webkit-transform-origin: $origin; transform-origin: $origin; } }I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website! Recommended reading:
How to use linear-gradient linear gradient in CSS3
Hover makes the mask flash in css question
The above is the detailed content of CSS drawing fan pattern. For more information, please follow other related articles on the PHP Chinese website!