Html 对齐整个页面内容会使表单稍微偏离中心

Html 对齐整个页面内容会使表单稍微偏离中心,html,css,Html,Css,.表格持有人{ 宽度:继承; } .表格位置 位置:绝对位置; 左:50%; 最高:50%; -webkit转换:翻译-50%,-50%; 转化:转化-50%,-50%; } 输入[类型=文本],选择{ 宽度:100%; 填充:2vh 4vh; 保证金:1vh; 显示:内联块; 边界:0.5vh ffffff; 边界半径:1vh; 框大小:边框框; 边框:实心0.5vh FFFF; } .表格位置{ 位置:绝对位置; 宽度:自动; 左:50%; 最高:50%; 转化:转化-50%,-50%; }

.表格持有人{ 宽度:继承; } .表格位置 位置:绝对位置; 左:50%; 最高:50%; -webkit转换:翻译-50%,-50%; 转化:转化-50%,-50%; } 输入[类型=文本],选择{ 宽度:100%; 填充:2vh 4vh; 保证金:1vh; 显示:内联块; 边界:0.5vh ffffff; 边界半径:1vh; 框大小:边框框; 边框:实心0.5vh FFFF; } .表格位置{ 位置:绝对位置; 宽度:自动; 左:50%; 最高:50%; 转化:转化-50%,-50%; } 输入[类型=文本],选择{ 宽度:100%; 填充:2vh 4vh; 保证金:1vh; 显示:内联块; 边界:0.5vh ffffff; 边界半径:1vh; 框大小:边框框; 边框:实心0.5vh FFFF; } 输入[类型=提交]{ 宽度:100%; 填充:2vh 4vh; 保证金:1vh; 显示:内联块; 边界半径:1vh; 框大小:边框框; 颜色:ffffff; 背景色:000000; 文本对齐:居中; 文字装饰:无; 显示:内联块; 字体大小:16px; 光标:指针; 边框:实心0.5vh FFFF; } @仅介质屏幕,最大宽度:500px{ 输入[类型=提交]{ 宽度:100%; 填充:2vh 4vh; 保证金:1vh; 显示:内联块; 边界半径:1vh; 框大小:边框框; 颜色:ffffff; 背景色:000000; 文本对齐:居中; 文字装饰:无; 显示:内联块; 字体大小:16px; 光标:指针; 边框:实心0.5vh FFFF; } } 形式{ 宽度:自动; 左边距:0vh; 右边距:0vh; 文本对齐:居中; }
这是因为输入[type=submit]上有左右边距。将其更改为边距:1vh 0以解决此问题,因为您希望它变为100%宽度

输入的实际宽度为100%+1vh右边距+1vh左边距。边距不计入宽度

.表格持有人{ 宽度:继承; } .表格位置 位置:绝对位置; 左:50%; 最高:50%; -webkit转换:翻译-50%,-50%; 转化:转化-50%,-50%; } 输入[类型=文本],选择{ 宽度:100%; 填充:2vh 4vh; 保证金:1VH0; 显示:内联块; 边界:0.5vh ffffff; 边界半径:1vh; 框大小:边框框; 边框:实心0.5vh FFFF; } .表格位置{ 位置:绝对位置; 宽度:自动; 左:50%; 最高:50%; 转化:转化-50%,-50%; } 输入[类型=文本],选择{ 宽度:100%; 填充:2vh 4vh; 保证金:1VH0; 显示:内联块; 边界:0.5vh ffffff; 边界半径:1vh; 框大小:边框框; 边框:实心0.5vh FFFF; } 输入[类型=提交]{ 宽度:100%; 填充:2vh 4vh; 保证金:1VH0; 显示:内联块; 边界半径:1vh; 框大小:边框框; 颜色:ffffff; 背景色:000000; 文本对齐:居中; 文字装饰:无; 显示:内联块; 字体大小:16px; 光标:指针; 边框:实心0.5vh FFFF; } @仅介质屏幕,最大宽度:500px{ 输入[类型=提交]{ 宽度:100%; 填充:2vh 4vh; 保证金:1VH0; 显示:内联块; 边界半径:1vh; 框大小:边框框; 颜色:ffffff; 背景色:000000; 文本对齐:居中; 文字装饰:无; 显示:内联块; 字体大小:16px; 光标:指针; 边框:实心0.5vh FFFF; } } 形式{ 宽度:自动; 左边距:0vh; 右边距:0vh; 文本对齐:居中; }
似乎输入的左右边距将输入推到了包含表单/div的外部。尝试使用边距:1vh 0;在输入端而不是边距上:1vh

太好了,谢谢!我试过两次定义它,但我忘了这是一个选项:没问题。此外,如果确实要保留边距,可以使用css calc函数从宽度计算中删除边距。因此,您可以将宽度更改为:width:calc100%-2vh,然后可以保持边距:1vh