Open
Bug 1394708
Opened 7 years ago
Updated 2 years ago
<input> is too wide in nightly57.0a1 on Windows10 Japanese Edition
Categories
(Core :: Layout: Form Controls, defect, P3)
Tracking
()
NEW
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox55 | --- | unaffected |
firefox56 | --- | unaffected |
firefox57 | --- | affected |
firefox58 | --- | affected |
People
(Reporter: alice0775, Unassigned)
References
Details
(Keywords: parity-chrome, parity-edge)
Attachments
(5 files, 1 obsolete file)
Steps To Reproduce:
0. Windows10 home 64bit CU, Japanese Edition
1. Open https://docs.python.org/2/library/abc.html
Actual Results:
See attached screenshot
Reporter | ||
Updated•7 years ago
|
Whiteboard: [parity-Chrome][parity-Edge]
Reporter | ||
Comment 1•7 years ago
|
||
Reporter | ||
Updated•7 years ago
|
Summary: <input> is too wide in nightly57.0a1 → <input> is too wide in nightly57.0a1 on Windows10 Japanese Edition
Comment 2•7 years ago
|
||
Well, the causes of this difference with Edge and Chrome are different.
Edge treats the generic font family, "sans-serif", not as "Meiryo". Actually, ASCII characters are not displayed with Meiryo, but Japanese characters are displayed with Meiryo. So, if you change the font-family of the <input> to "Meiryo" or "メイリオ", you can see same result. So, the generic font family handling is different from Gecko.
On the other hand, Chrome behaves odd. Even if you change the font-family to "Meiryo" or "メイリオ", you don't see wider <input> element but the <input> element is displayed with Meiryo. So, the behavior is really odd to me. Chrome might not use Meiryo's metrics to compute <input> element size.
I guess this may not be so major problem since this is caused by incomplete style rules. If web designers change font of <input>, they should specify <input> element size with CSS rather than using size attribute or not specifying anything for avoiding too long/short <input> element.
On the other hand, if we could change <input size> computation or default size of <input>, we may have avoided this issue forever. However, it may cause other issues like too short <input> element for specific fonts.
This issue might have been discussed in other bugs, but I don't know that. Any ideas?
Reporter | ||
Comment 3•7 years ago
|
||
Reporter | ||
Comment 4•7 years ago
|
||
Nightly57.0a1 : approx 22 chars
Beta56.0b6 : approx 12 chars
It is too wide in Nightly57.0a1.
Attachment #8902133 -
Attachment is obsolete: true
Reporter | ||
Comment 5•7 years ago
|
||
The width of the span element does not differ greatly between nightly and release.
However, the width of the input element is doubled....
why?
Reporter | ||
Comment 6•7 years ago
|
||
Comment 7•7 years ago
|
||
The width is computed with average character width of the font that is stored in font metrics, not actual width:
https://searchfox.org/mozilla-central/rev/cd82cacec2cf734768827ff85ba2dba90a534c5e/layout/forms/nsTextControlFrame.cpp#141,157,161-162
And the default size attribute value of Gecko is 20:
https://searchfox.org/mozilla-central/rev/cd82cacec2cf734768827ff85ba2dba90a534c5e/dom/html/nsITextControlElement.h#218
Reporter | ||
Comment 8•7 years ago
|
||
This seems to be as expected if font specified on ancestor element.
Comment 9•7 years ago
|
||
(In reply to Alice0775 White from comment #8)
> This seems to be as expected if font specified on ancestor element.
Yes, web designers need to specify font-family to <input> directly since we specify it directly in default stylesheet. Therefore, this should not be so major.
https://searchfox.org/mozilla-central/rev/cd82cacec2cf734768827ff85ba2dba90a534c5e/layout/style/res/forms.css#89,98
Updated•7 years ago
|
Priority: -- → P3
Updated•7 years ago
|
status-firefox58:
--- → affected
Comment 10•7 years ago
|
||
Mass bug change to replace various 'parity' whiteboard flags with the new canonical keywords. (See bug 1443764 comment 13.)
Keywords: parity-chrome,
parity-edge
Whiteboard: [parity-Chrome][parity-Edge]
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•