【问题标题】:Button is cut only in Internet Explorer按钮仅在 Internet Explorer 中被剪切
【发布时间】:2018-12-13 12:55:30
【问题描述】:

在我的网页中,我有一个按钮。当我在 Chrome 中显示页面时,一切正常,但是当我在 IE 中查看它时,按钮文本不适合按钮(见图)。您是否有提示,可能导致此问题的原因以及如何解决?我也在使用 bootstrap v4.0.0。

代码如下:

.button {
  background-color: #002c4c;
  border: none;
  color: white;
  padding: 15px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  cursor: pointer;
  align: center;
  width: 100%;
}

.row {
  margin-right: 0;
}

.row-8 .col-lg-2 {
  max-width: 225px;
}
<div class="row row-8">
  <div class="col-lg-2">
    <form action="/MyProject/print?language=de" method="post" name="printForm" onsubmit="return validateForm()" target="_blank">

      <input type="submit" class="button" name="btn_print" value="PDF generieren">
    </form>
  </div>
</div>

即使我将整个网页和 css 放入其中,我也无法使用代码 sn-p 重现此错误。我想这与引导列有关。我在这里使用 lg-2,最大宽度为 225px。

使用答案中建议的解决方法(按钮而不是输入)后,我得到了上述结果。 IE 中的按钮有点小,虽然它没有用完我定义的最大宽度。如果有人遇到同样的问题并找到了原因,我会很高兴听到这个消息。现在,我将接受解决方法。

【问题讨论】:

  • 您使用的是网络字体还是系统字体?
  • @Lars-OlofKreim 在正文中我定义font-family: 'Roboto', Arial, sans-serif;
  • 好的...如果您在此处不使用“Roboto”时出现此错误,请您尝试一下(只是为了澄清我的想法是否正确)
  • @Lars-OlofKreim 是的,它仍然会发生。我已经检查过我是否在 css 的其他地方使用了 Roboto,但事实并非如此。
  • @CBroe 我从客户端将其更改为 HTML。我不知道如何使用这些代码剪切的东西,对不起。我认为这将是一个 CSS 问题。

标签: css internet-explorer cross-browser bootstrap-4


【解决方案1】:

我自己已经遇到过文本溢出 IE11 中的按钮的问题。

对我来说,这是一个与字体相关的渲染错误。

IE11 似乎在页面加载时呈现按钮,在加载 webfonts 之前,当加载 webfont 时,按钮没有重绘,因此它不适应新的宽度。

我能找到的唯一解决方案是在加载 webfonts 时强制浏览器重绘。因此我使用了一个名为“FontFaceObserver”的 JS (https://github.com/bramstein/fontfaceobserver)

JS:

new FontFaceObserver('Roboto', {
    style: 'normal',
    weight: 400,
}).load(function(){
    $('body').addClass('state-font-loaded');
}, 10000);

CSS:

.state-font-loaded {
    visibility: visible; //forcing browser to redraw
}

另一种尝试是将input 更改为button,例如 &lt;button type="submit" class="button" name="btn_print"&gt;PDF generieren&lt;/button&gt; 如果它们连接到输入元素,这可以解决大小问题。 (也请检查这个元素,看看是否有任何固定或百分比宽度设置)

【讨论】:

  • 您能添加“更改按钮输入”吗? (:
  • 我添加了 &lt;button&gt; 作为额外的测试方式(感谢您的投票,很高兴我能以某种方式提供帮助,这似乎也是一种解决方法)
猜你喜欢
  • 2012-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-16
  • 1970-01-01
  • 2011-07-16
  • 2010-09-25
相关资源
最近更新 更多