首页 > 解决方案 > 文本不在 div 中居中

问题描述

* {margin: 0;}
			
div {
  background-color:#bad455;
  width: 200px;
  height: 200px;
  top:50%;
  left:50%;
  position:fixed;
  transform: translate(-50%, -50%);
  text-align:center;
}

div:hover {
  box-shadow: 3px 5px 50px 5px;
  display:inline-block;
  border-radius:10%;
  transform:skewX(50deg);
}
div p {
  top:50%;
  position:relative;
}
<div>
  <p>oooo</p>
</div>

当我这样做top:50%并设置 时position:relative,我希望此文本位于中间。但现在我可以看到它并不完全在它的中间。如果有人能解释一下,我将不胜感激!

标签: csshtml

解决方案


用于 transform: translateY(-50%);正确居中

* {
  margin: 0;
}

div {
  background-color: #bad455;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  position: fixed;
  transform: translate(-50%, -50%);
  text-align: center;
}

div:hover {
  box-shadow: 3px 5px 50px 5px;
  display: inline-block;
  border-radius: 10%;
  transform: skewX(50deg);
}

div p {
  top: 50%;
  transform: translateY(-50%);
  position: relative;
}
<div>
  <p>oooo</p>
</div>


推荐阅读