问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

CSS3怎么画一个4分之3的空心扇形

发布网友 发布时间:2022-04-06 12:37

我来回答

5个回答

懂视网 时间:2022-04-06 16:58

本篇文章给大家带来的内容是关于CSS如何实现任意角度的扇形(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

扇形制作原理,底部一个纯色原形,里面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;}
</st
</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></pre>

下面这个是结合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></pre>

热心网友 时间:2022-04-06 14:06

先画一个圆,再画一个旋转45度的正方形,然后让正方形定位到圆上面盖住圆

热心网友 时间:2022-04-06 15:24

radius那个属性有设置弧度吧!

热心网友 时间:2022-04-06 16:59

具体想怎么实现?是一个radius写出来?还是两个div组合?

热心网友 时间:2022-04-06 18:50

是这样??
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
荨麻疹吃什么食物好荨麻疹饮食禁忌有哪些 三极管9015的参数有哪些 4岁孩子缺锌比别人矮,还能长高吗 婴儿出生时很矮长大一定矮吗 陌陌表情红唇怎么弄 因为不知道SUMIF函数还能横着用她一上午的工作被别人一分钟搞定_百度知 ... EXCEL中SUMIF公式的运用问题?请教! 苹果手机没有用的软件怎么办苹果手机不常用的软件怎么打开 血尿一般是什么原因引起的 win7桌面图标消失了 桌面图标消失了怎么恢复 求系统小说,不要穿越 带着升级系统到异界小说? 求一本小说,主角身上有个系统,系统是360安全卫士。 找一本小说是说主角获得了一个残破的系统,可以自己发布任务,好像是都市小说 求小说,开头系统奖励主角粘鼠板,主题是都市捉鬼,主角收服了鬼王,之后到了玄幻世界,主角有很多剑武魂 抱歉,有系统真的了不起by我丑到灵魂深处txt文件免费在线阅读 无法安装蓝牙适配器。怎么回事? 蓝牙适配器ES-388“未授权&quot; IBM x240s的realtek bluetooth驱动无法安装 我用免驱动的蓝牙适配器和摩托罗拉H500在电脑上连接,连上后为什么老是提示设备未授权,然后就断开了 未授权支付宝使用蓝牙功能 蓝牙适配器没有正式的授权怎么办? 蓝牙适配器不能用了 蓝牙拔号有问:电脑装了个蓝牙驱动,老提示未授权什么的,但一直用它拔号上网也可以的,可不知什么原因... 无蓝牙音频装置被授权?怎么连接蓝牙 我在电脑上插入蓝牙适配器的时候,右下角提示说没被授权,只能传送5M的数据,怎么解决这个问题呢? 蓝牙适配器老是出现未授权,怎么办? 我买了个蓝牙适配器 下载了很多软件都不行 有的只5M 有的直接未授权 怎么 办啊急急急 我的蓝牙适配器在用了一段时间后为什么会出现设备未被授权,只能传送5MB数据的提示?? - 信息提示 求告诉,怎样的六神人马比较刚 找都市全能类小说主角有系统 超级恶棍系统小说txt全集免费下载 主角穿越异界带系统有无敌不死之身? 装修师傅把木门上面弄上了一层白色的胶,怎么都擦不掉,怎么办才好呢? 一部未来500年的智能系统小说,主角的一个女友叫萧媚 都市小说 没有穿越 没有重生 影视降临主角拥有系统 系统要求猎杀降临人物 武器是大* 找一本小说,那个小说说男主穿越到异界获得一个召唤系统,然后在异接当皇帝,那里一共有9个地域, 求小说,异界,升级,无敌,系统,异能,都行 猫空运会死吗 宠物坐飞机用有氧舱托运会不会死 宠物飞机托运致死亡 租房补贴申请书怎么写? 廉租房补贴申请书如何填写 租房补贴申请书怎么写 武汉外来本科住房补贴申请怎么写 困难家庭申请住房补贴该如何写申请书 怎么写公租房补贴申请书 请问公司里的《住房补贴申请表》怎么写? 急!急!急! 寒冬里的期盼作文初一600