【问题标题】:Safari adding space next to text, Safari bug?Safari 在文本旁边添加空格,Safari 错误?
【发布时间】:2013-08-27 19:38:10
【问题描述】:

所以我正在编写一些半复杂的按钮,当您单击一个按钮时,加载符号会移入一些文本的左侧。

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

这是它应该是什么样子的屏幕截图:

这是之前在 Safari 中的样子:

这是 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 这样做?这里没有什么东西可以像那样推倒它。

【问题讨论】:

    标签: html css safari


    【解决方案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>
    

    不要在任何地方都使用浮点数:)

    希望它能解决你的问题

    【讨论】:

    • 不幸的是,我必须拥有封装动画 gif 的 div,以便它在 javascript 接管时掩盖给定而不是调整 gif 的大小。我会尝试移除那里的浮动
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-05
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    • 2019-04-24
    相关资源
    最近更新 更多