中心CSS3 Hexagon

时间:2015-03-05 23:49:53

标签: html css forms css3

我喜欢将一个CSS3六边形置于div中(请看下面的截图)。我使用Foundation Framework,因此Hexagon由一个列包装器包装(在这种情况下使用类“warpper”)。

我的CSS:

.wrapper {
    width: 1000px;
}

.hexagon {
  position: relative;
  width: 300px; 
  height: 173.21px;
  margin: 86.60px 0;
  background-image: url(http://csshexagon.com/img/meow.jpg);
  background-size: auto 346.4102px;
  background-position: center;
}

.hexTop,
.hexBottom {
  position: absolute;
  z-index: 1;
  width: 212.13px;
  height: 212.13px;
  overflow: hidden;
  -webkit-transform: scaleY(0.5774) rotate(-45deg);
  -ms-transform: scaleY(0.5774) rotate(-45deg);
  transform: scaleY(0.5774) rotate(-45deg);
  background: inherit;
  left: 43.93px;
}

/*counter transform the bg image on the caps*/
.hexTop:after,
.hexBottom:after {
  content: "";
  position: absolute;
  width: 300.0000px;
  height: 173.20508075688775px;
  -webkit-transform:  rotate(45deg) scaleY(1.7321) translateY(-86.6025px);
  -ms-transform:      rotate(45deg) scaleY(1.7321) translateY(-86.6025px);
  transform:          rotate(45deg) scaleY(1.7321) translateY(-86.6025px);
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  background: inherit;
}

.hexTop {
  top: -106.0660px;
}

.hexTop:after {
  background-position: center top;
}

.hexBottom {
  bottom: -106.0660px;
}

.hexBottom:after {
  background-position: center bottom;
}

.hexagon:after {
  content: "";
  position: absolute;
  top: 0.0000px;
  left: 0;
  width: 300.0000px;
  height: 173.2051px;
  z-index: 2;
  background: inherit;
}

我在JSFiddle上的完整代码:http://jsfiddle.net/oa0j4ba8/1/

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以将auto添加到margin working demo

.hexagon {
  position: relative;
  width: 300px;
  height: 173.21px;
  margin: 86.60px auto;/*replace 0 with auto here*/
  background-image: url(http://csshexagon.com/img/meow.jpg);
  background-size: auto 346.4102px;
  background-position: center;
}