CSS Grid Firefox vs Chrome difference with grid-template-columns
本问题已经有最佳答案,请猛点这里访问。
以下代码段设计用于 Firefox(2020 年 6 月 24 日的 79.0a1),其中 CSS 网格的行为符合我的预期(标签和输入在同一行,提交跨越字段集的宽度)。在 Chrome (83.0.4103.116) 中,标签和输入在不同的行上,提交按钮尽可能窄。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | <!DOCTYPE html> <html lang="en"> <head> <style type="text/css"> input[type="submit"] { display: block; grid-column-start: 1; grid-column-end: 3; } label { display: block; text-align: right; } fieldset { display: grid; grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr); } </style> </head> <body> <form action="/login" method="post"> <fieldset> <label for="email">Email address</label> <input type="email" name="email"> <input type="submit" value="Sign in"> </fieldset> </form> </body> </html> |
这是浏览器的错误还是我在做一些愚蠢的事情?
-
Stackoverflow,"Chrome 上字段集错误的网格布局"
-
Chromium,"问题 375693:[css-flex][css-grid] Flexbox/网格布局模型不适用于字段集元素"
正如 Stackoverflow 上的相关线程中所述,在字段集上使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | input[type="submit"] { display: block; grid-column-start: 1; grid-column-end: 3; } label { display: block; text-align: right; } form { display: grid; grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr); } fieldset { display: contents; } |
1 2 3 4 5 6 7 | <form action="/login" method="post"> <fieldset> <label for="email">Email address</label> <input type="email" name="email"> <input type="submit" value="Sign in"> </fieldset> </form> |
我注意到 MDN 提到可能存在一些可访问性问题,因为