【发布时间】:2019-11-15 19:48:15
【问题描述】:
我在表格中有一个textbox。我给出了style="width: 370px;” 在 Firefox 中浏览时,它与此表单中的所有其他字段对齐是正确的。但是在 IE 中需要增加一点。即380px。
那么我将如何根据浏览器将width 提供给该文本框?我知道这是可能的。但是不知道怎么样?
有人知道吗?
提前致谢
【问题讨论】:
标签: javascript css cross-browser
我在表格中有一个textbox。我给出了style="width: 370px;” 在 Firefox 中浏览时,它与此表单中的所有其他字段对齐是正确的。但是在 IE 中需要增加一点。即380px。
那么我将如何根据浏览器将width 提供给该文本框?我知道这是可能的。但是不知道怎么样?
有人知道吗?
提前致谢
【问题讨论】:
标签: javascript css cross-browser
如果您使用的是 JQuery,则可以使用 jquery.browser 来检测浏览器是否为 IE(或任何数量的其他有据可查的浏览器检测方法。如果是 IE,则设置边 $document.getElementByID(formelement).css(width).
虽然我建议进一步研究为什么您的表单元素在 IE 中不对齐,并修复该问题,而不是根据查看浏览器动态调整表单元素的大小。
【讨论】:
$.browser 已弃用,请不要使用它。使用本线程其他地方提到的条件 CSS,或尝试使用 $.support
为什么不conditional CSS?
【讨论】:
关于jsdocument.write(navigator.appCodeName);
关于 php echo array_shift(explode(' ', $_SERVER['HTTP_USER_AGENT']));
使用这些你可以切换css,但是你有没有看过像Blueprintcss这样的css框架
它包含类似的东西
<link rel="stylesheet" href="blueprint/screen.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="blueprint/print.css" type="text/css" media="print" />
<!--[if IE]><link rel="stylesheet" href="blueprint/ie.css" type="text/css" media="screen, projection" /><![endif]-->
你可以使用这个条件语句,使用这个框架也不错。
【讨论】: