【问题标题】:Adding jquery 2.0.3 breaks text-align for textboxes on IE10添加 jquery 2.0.3 会破坏 IE10 上文本框的文本对齐
【发布时间】:2013-12-04 21:22:53
【问题描述】:

我在使用 jQuery 时看到了一些奇怪的行为。就好像它正在对 input[type=text] 元素做一些事情以使它们表现得怪异。

注意这个没有引用 jquery 的 jsFillder。

http://jsfiddle.net/P3kk7/

<style>
    td.right input {
        text-align:right;
    }
</style>
<table>
<tr>
    <td class="right">
        <input type="text" />
    </td>
    <td id="testing">
        <input type="text" />
    </td>
</tr>
</table>
<script>    
  var td = document.getElementById("testing");
  td.className = "right";
</script>

当您在每个文本框内单击时,您会看到相同的行为。光标按预期右对齐。

现在当我添加 jQuery 时

http://jsfiddle.net/3Nrzd/

<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>

点击 javascript 修改 className 不会右对齐光标。关注第二个文本框并开始输入一些数据后,它将在演示期间使其右对齐。

我使用$().css() 方法完成了这项工作,没有任何区别。 我还删除了 ::ms-clear 伪元素,让傻笑没有任何区别。

我希望两个文本框的行为相同,因为它们是相同的。

任何建议将不胜感激。没有

【问题讨论】:

    标签: jquery css internet-explorer


    【解决方案1】:

    我已经通过添加-ms-writing-mode: rl-tb; 规则解决了这个问题:

    td.right input {
        text-align:right;
        -ms-writing-mode: rl-tb;
    }
    

    现场小提琴:http://jsfiddle.net/keaukraine/mNHJ6/

    有关专有-ms-writing-mode CSS 属性的更多信息:http://msdn.microsoft.com/en-us/library/ie/ms531187%28v=vs.85%29.aspx

    【讨论】:

    • 虽然这仍然感觉像是 jquery 2.0.3 的问题,但这是一个有效的解决方案。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2016-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2015-10-09
    相关资源
    最近更新 更多