Html 如何防止用户代理样式表覆盖我自己的CSS?
我必须为文本框和选择元素设置相等的宽度 当我卸下时!DOCTYPE两个输入字段的长度都设置为相等,即每个字段相应地为185px 使用DOCTYPE时,文本框的宽度略大于select元素。如果我用javascript用offsetWidth属性检查它的宽度,就会发现它是189px,而不是我在CSS中设置的185px 输出的屏幕截图:- 代码片段:-Html 如何防止用户代理样式表覆盖我自己的CSS?,html,css,browser,doctype,Html,Css,Browser,Doctype,我必须为文本框和选择元素设置相等的宽度 当我卸下时!DOCTYPE两个输入字段的长度都设置为相等,即每个字段相应地为185px 使用DOCTYPE时,文本框的宽度略大于select元素。如果我用javascript用offsetWidth属性检查它的宽度,就会发现它是189px,而不是我在CSS中设置的185px 输出的屏幕截图:- 代码片段:- <!DOCTYPE html> <html> <style> .usrInput{width:185px} &
<!DOCTYPE html>
<html>
<style>
.usrInput{width:185px}
</style>
<body>
<div id="content">
<form>
<input type="text" name="fname" id="fname" class="usrInput"/><br/>
<select name="state" id="state" class="usrInput">
<option value="">Select State
</select><br/>
</form>
</div>
</body>
</html>
.usrInput{宽度:185px}
选择状态
我认为是用户代理样式表以某种方式覆盖了我自己的CSS。我不知道为什么会发生这种情况,我应该怎么做才能克服这个问题?如果你使用
.usrInput {
box-sizing: border-box;
}
下拉列表和输入大小将匹配
编辑:通常您可以使用诸如normalize.css之类的css重置来自动处理这样的小问题。您是否尝试过设置
框大小:边框框
?@Sirko我没有尝试过。(仅供参考:在这种情况下,你不必“猜测”,不管是UA样式表还是非UA样式表——浏览器开发工具可以帮助你很快找到答案。)@CBroe感谢Tona,在这个世界上有一些愚蠢的人,比如说,他们甚至没有勇气提供任何提示就否决了这个问题。