简体   繁体   English

CSS弯曲形状

[英]CSS curved shapes

What is the best solution to create a layout like below 什么是创建如下所示的布局的最佳解决方案 在此处输入图片说明

with the gap between two elements (white gap between red and green) with equal space 两个元素之间的间距(红色和绿色之间的白色间距)具有相等的间距

You can create this by using HTML and CSS like below or go through JSFiddle 您可以使用下面的HTML和CSS来创建此文件,也可以通过JSFiddle进行创建

  .banner-div { height: 100px; width: 320px; display: flex; background-color: #377d22; } .red-div { width: 30%; background-color: #eb3223; height: 100%; border: 2px solid #fff; border-top-right-radius: 50%; border-bottom-right-radius: 50%; } .other-div { width: 70%; height: 100%; } 
  <div class="banner-div"> <div class="red-div"> </div> <div class="other-div"></div> </div> 

A simple radial-gradient will do it: 一个简单的radial-gradient就可以做到:

 .box { height:100px; background:radial-gradient(circle at left, green 20%,transparent 20%,transparent calc(20% + 5px),red calc(20% + 5px)) } 
 <div class="box"> </div> 

To have the perfect half circle you may consider multiple background like this: 要拥有一个完美的半圆,您可以考虑使用多个背景,例如:

 .box { height:100px; background: radial-gradient(circle at left,green 50%,transparent 50%, transparent calc(50% + 5px),red calc(50% + 5px)) 20px 0/88px 100px, linear-gradient(green,green)left/20px 100%, linear-gradient(red,red)right/calc(100% - 20px - 85px) 100%; background-repeat:no-repeat; } 
 <div class="box"> </div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM