css 这种形状的背景要怎么写捏 左边有点小曲线

html-css012

css 这种形状的背景要怎么写捏 左边有点小曲线,第1张

这个好像很难用css做到, 不过或许可以考虑用svg做, 也可以用border-radius和背景颜色(多个元素嵌套排版)做, 不过做出的效果, 和这个区别有点大, 下面是一个例子

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>无标题文档</title>

<style> 

 dl.xz{

  background-color: #ff6000

  overflow: hidden

  margin: 0

  padding: 0

 }

 dl.xz dt,dl.xz dd{

  float:left

  height: 40px

  line-height: 40px

  margin: 0

  padding: 0

 }

 dl.xz dt{

  background-color: #fff

  overflow: hidden

 }

 dl.xz dt>span{

  width:15px

  float: left

  height: 100%

  display: block

  background: #fff

 }

 dl.xz dt>span>span{

  width:100%

  height: 100%

  display: block

  background: #ff6000

  border-top-left-radius: 15px

 }

 dl.xz dt>span.left{

  width:60px

  background-color: #ff6000

 }

 dl.xz dt>span.left>span{

  background: #fff

  border-bottom:2px solid #ff6000

  border-bottom-right-radius: 30px

  border-top-left-radius: 0

  height: 38px

 }

</style>

</head>

 <dl class="xz">

  <dt>

   <span class="left"><span></span></span><span class="right"><span></span></span>

  </dt>

  <dd>测试按钮</dd>

 </dl>

<body>

</body>

</html>

一般是用画好的圆角图片充当背景来实现的,用photoshop画好圆角,切成需要的大小来填充背景即可

当然也有不要图片的做法,原理就是通过div来模拟像素的拐角,做法太极端,一般不采用。