国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

利用CSS繪制任意角度的扇形示例代碼

2024-07-11 08:41:58
字體:
來源:轉載
供稿:網友

前言

扇形制作原理,底部一個純色原形,里面2個相同顏色的半圓,可以是白色,內部半圓按一定角度變化,就可以產生出扇形效果

效果圖

示例代碼:

<html><head>    <meta charset="UTF-8">    <title>扇形繪制</title>    <style> .shanxing{ position: relative; width: 200px; height: 200px; border-radius: 100px; background-color: yellow;        } .sx1{ position: absolute; width: 200px; height: 200px; transform: rotate(0deg); clip: rect(0px,100px,200px,0px); /*這個clip屬性用來繪制半圓,在clip的rect范圍內的內容顯示出來,使用clip屬性,元素必須是absolute的 */ border-radius: 100px; background-color: #f00;            /*-webkit-animation: an1 2s infinite linear; */        } .sx2{ position: absolute; width: 200px; height: 200px; transform: rotate(0deg); clip: rect(0px,100px,200px,0px); border-radius: 100px; background-color: #f00;            /*-webkit-animation: an2 2s infinite linear;*/        }        /*繪制一個60度扇形*/ .shanxing1 .sx1{transform: rotate(-30deg);} .shanxing1 .sx2{transform: rotate(-150deg);}        /*繪制一個85度扇形*/ .shanxing2 .sx1{transform: rotate(-45deg);} .shanxing2 .sx2{transform: rotate(-140deg);}        /*繪制一個向右扇形,90度扇形*/ .shanxing3 .sx1{transform: rotate(45deg);} .shanxing3 .sx2{transform: rotate(-45deg);}        /*繪制一個顏色扇形 */ .shanxing4 .sx1{transform: rotate(45deg);background-color: #fff;} .shanxing4 .sx2{transform: rotate(-45deg);background-color: #fff;}        /*繪制一個不同顏色半圓夾角 */ .shanxing5 .sx1{transform: rotate(45deg);background-color: #f00;} .shanxing5 .sx2{transform: rotate(-45deg);background-color: #0f0;}</style></head><body> 扇形制作原理,底部一個純色原形,里面2個相同顏色的半圓,可以是白色,內部半圓按一定角度變化,就可以產生出扇形效果 <p>/繪制一個60度扇形/</p><div class="shanxing shanxing1">    <div class="sx1"></div>     <div class="sx2"></div></div><p>/*繪制一個85度扇形*/</p><div class="shanxing shanxing2">    <div class="sx1"></div>     <div class="sx2"></div></div><p>/*繪制一個向右扇形,90度扇形*/</p><div class="shanxing shanxing3">    <div class="sx1"></div>     <div class="sx2"></div></div><p>/*繪制一個顏色扇形 */</p><div class="shanxing shanxing4">    <div class="sx1"></div>     <div class="sx2"></div></div><p>/*繪制一個不同顏色半圓夾角 */</p><div class="shanxing shanxing5">    <div class="sx1"></div>     <div class="sx2"></div></div></body> </html>

下面這個是結合css+html5+javascript的一個更復雜的圓環圖形

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">    <title>circle</title>    <style type="text/css"> #myCanvas{} #nihao{ position: absolute; top:10px; z-index: 1;    }    </style>  </head><body style="background:#FBFBFB;"><canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;"> not suopport canvas </canvas><div id="nihao"></div><script>var text=document.getElementById("nihao");text.innerHTML="woshiwuxinguo"; var i=0.9;//這里默認設置好評率為90%var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d");ctx.beginPath();ctx.lineWidth=10;ctx.strokeStyle="gray";ctx.arc(100,75,50,0,2*Math.PI);ctx.fillStyle="#FBFBFB";ctx.fill();ctx.stroke();ctx.beginPath();ctx.translate(100,75);ctx.rotate(-90*Math.PI/180);ctx.strokeStyle="#FFCFCF";ctx.arc(0,0,50,0,2*Math.PI*i);ctx.stroke();c.addEventListener("mouseover", function(e) {ctx.beginPath();ctx.strokeStyle="gray";ctx.arc(0,0,50,0,2*Math.PI);ctx.stroke(); var finish=i; var step=0; var internal=setInterval(function(e) {console.log("step:"+step); if(step<finish){    step=step+0.01;    ctx.beginPath();    ctx.strokeStyle="#FFCFCF";    ctx.arc(0,0,50,0,2*Math.PI*step);    ctx.stroke();    }else{    clearInterval(internal);    }}, 0.5)}, true) </script> </body></html>

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 思南县| 梧州市| 会理县| 清新县| 西青区| 弥渡县| 威远县| 平阴县| 乡宁县| 乐业县| 东阳市| 碌曲县| 莆田市| 思南县| 清镇市| 嘉黎县| 股票| 秦皇岛市| 德格县| 平凉市| 沙河市| 平陆县| 轮台县| 凉城县| 北京市| 小金县| 永顺县| 马关县| 宜昌市| 二连浩特市| 板桥市| 天门市| 鸡西市| 惠水县| 紫云| 乐平市| 大余县| 安溪县| 西丰县| 潢川县| 新巴尔虎左旗|