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

html-css022

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>

给这个元素添加样式

border-top-left-radius: 数值px

border-top-right-radius:数值px

或者直接用背景图片

刚手写的,希望是你要的效果;可以兼容不同浏览器的水平和垂直居中

<body style="margin:0padding:0">

<div style="height:1pxbackground-color:#000position:absolutetop:50%left:0pxwidth:100%"></div>

<div style=" background-color:#000position:absolutetop:50%left:50%width:200pxheight:100pxmargin:-50px 0 0 -100pxbackground-color:#00FFCC">插入图片</div>

</body>

如果你要做的是一个页面的某一部分的话,那就调整top的值,设为固定值就行了