为什么当我向doctype添加xmlns时,文本框的宽度发生了变化?
How come when I add xmlns to my doctype, the widths of my text boxes change?
<!DOCTYPE html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
当我添加xmlns时,文本框变短了。它搞砸了我输入框的所有样式。为什么?
注意:我看到在我的开发控制台,这是添加到文本框:
input:not([type="image"]), textarea {
box-sizing: border-box;
}
这是什么,我如何摆脱它?
xmlns属性放在<html>
开始标签上,而不是doctype。
如果<DOCTYPE html
和空格之后的下一个字符不是>
,那么接下来的六个字符必须是PUBLIC
或SYSTEM
,不区分大小写,否则页面将以quirks模式处理。您的文档类型正在导致怪癖模式。将xmlns属性去掉,doctype将产生标准模式。
重写当前设置:
input:not([type="image"]), textarea {
box-sizing: content-box !important;
}
默认的box-sizing属性是content-box
。当您使用xmlns
时,一些浏览器可能会更改框模型,因为它认为应该这样做。这可能是件好事。对于会导致问题的地方,只需重写它们的样式。
编辑:我刚刚注意到@Alohci做了什么,也就是说,你把xmlns
放在doctype
标签上,而不是html
标签上。如果你愿意,你可以修补它,但我建议将属性移动到html
,看看是否保持它们应该的方式。
doctype标签告诉浏览器想要使用哪种HTML。当没有指定时,每个浏览器都将使用默认值。不同类型的HTML内容的默认显示样式是不同的。所以当你指定文档类型时,你可能会选择一个不同于浏览器默认使用的类型。
这需要你指定一些样式,以确保你的文档在所有浏览器中看起来都像你期望的那样。
相关文章:
- 起重行为在铬 48 和 49 之间发生了变化
- 找出 Vue.js 深度自定义指令中哪个属性发生了变化
- 发送到前端后,mysql 列中的日期发生了变化
- 检索到的 $().position() 更新为 position: absolute 后发生了变化
- 为什么 Angular 没有注意到这个变量的值发生了变化
- 自定义图标行为是否在JQueryMobile 1.4(Alpha / Beta / RC-1)中发生了变化
- Angular ngClass 没有更新我的类,即使我的条件按预期发生了变化
- 是这里的范围发生了变化还是其他原因
- 主页链接'的背景颜色在Internet explorer中发生了变化,但在Mozilla Firefox中不起作
- Chrome中的Math.log2精度发生了变化
- JS SDK auth.logout事件行为最近似乎发生了变化
- 为什么我的变量“c”发生了变化
- 使用JavaScript,这样当点击图像时,另一个元素's的位置发生了变化
- ag网格对单元格值的排序发生了变化
- 当我插入MySQL时,我的代码发生了变化
- 隐藏提交按钮,除非表单/输入数据发生了变化
- react.js如何知道数据发生了变化?
- 找出在Ember ArrayController中哪个单独的项目发生了变化
- 将html移到php include后,情况发生了变化
- 如何检测表单输入的值自设置以来是否发生了变化