Safari在文本旁边添加空间,Safari bug?

时间:2013-08-27 19:38:11

标签: html css safari

所以我正在编写一些半复杂的按钮,当你点击一个按钮时,加载符号会移动到某些文本的左侧。

除Mac上的Safari外,所有浏览器(即8-10,FF,Mac和PC上的Chrome)的按钮看起来都很好。它似乎无缘无故地在字体右侧增加了额外的空间。

以下是屏幕截图:

enter image description here

这是Safari中之前的样子:

enter image description here

这是HTML:

        <div class="move1">
            <div class="final-button small">
                <div class="final-spinner">
                    <img src="images/Loader_24g.gif" />
                </div>
                <div class="final-title">
                    send money
                </div>
            </div>
        </div>
        <div class="move2">
            <div class="final-button large">
                <div class="final-spinner">
                    <img src="images/Loader_32g.gif" />
                </div>
                <div class="final-title">
                    send money
                </div>
            </div>
        </div>

和CSS:

.final-button {
    font-family: 'proxima-nova', Helvetica, Arial, Verdana, Sans-Serif;
    color: #ffffff;
    text-transform:uppercase;
    background:#97c231;
    float:right;
    border-radius:2px;
    cursor:pointer;
}
.final-button:hover {
    background:#a6d536; 
}
.final-button .final-spinner {
    float:left; 
    overflow: hidden;
    width: 0px;
}
.final-button .final-title {
    float:left;
}

.final-button.small {
    font-size: 18px;
    padding:8px 28px;
}
.final-button.small .final-spinner {
}
.final-button.small .final-title {
    padding: 3px 0 0 0;
}
.final-button.large {
    font-size: 24px;
    padding:12px 23px;
}
.final-button.large .final-spinner {
}
.final-button.large .final-title {
    padding: 2px 0 0 0;
}
.move1, .move2 {
    margin:50px 0 0 0;
    clear:both;
    overflow:hidden;
}

这里有一个实例: http://412webdesigns.com/playground/tempGo/button.html

为什么safari会这样做的任何想法?这里没有什么可以像这样推动它。

1 个答案:

答案 0 :(得分:1)

在safari开发工具中检查你的css中的这一行:

.final-button .final-title {
   float: left; //remove it
}

我认为这是浮动问题,因此请将其删除或使用 @ inline-block @inline 进行更改。

尝试更改html:

 <div class="final-spinner">
      <img src="images/Loader_32g.gif" />
 </div>
 <div class="final-title">
     send money
 </div>

  <img class="final-spinner" src="images/Loader_32g.gif" />
  <span class="final-title">
     send money
  </span>

并且不要在每个地方使用浮动:)

希望它可以解决您的问题