在Safari对齐中显示Flex

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Safari对齐中显示Flex相关的知识,希望对你有一定的参考价值。

我有div块,里面有一个子元素:

.mark__btn {
  width: 19px;
  height: 19px;
  border-radius: 2px;
  cursor: pointer;
  text-align: center;
  opacity: 0.8;
  position: relative;
  margin-right: 3px;
  color: #000;
  display: flex;
  align-items: center;
  align-content: center;
  flex-direction: column;
  justify-content: center;
  align-self: center;
}

.mark__btn span {
  font-size: 14px;
}
<div class="mark__btn">
  <span>+</span>
</div>

所以,我尝试通过水平和垂直对齐中心元素span,它适用于Chrome,但不适用于Safari

答案

您需要为Safari和其他浏览器使用前缀才能使用display flex

display: -webkit-box; 
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;  // for safari
display: flex;

以上是关于在Safari对齐中显示Flex的主要内容,如果未能解决你的问题,请参考以下文章

在 Chrome、Safari 和 Edge 中显示 flex 对齐不正确,但在 Firefox 中正确

justify-content: flex-end 的 Safari 问题;对齐项目:flex-end;

Flexbox child align-self:Safari 中的 flex-end 问题

显示 flex 与 Safari 问题

在显示 flex 上右对齐文本

显示 flex 在 Chrome 和 Safari 中的行为不同