-
Notifications
You must be signed in to change notification settings - Fork 729
[css-forms-1] Add UA style rules for text fields #11897
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
```css | ||
input:is([type=text], [type=search], [type=email], [type=password], [type=tel], [type=url], [type=number]), | ||
textarea { | ||
display: inline-grid; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should maybe use the modern syntax?
b436f44
to
4a899fb
Compare
|
||
```css | ||
input:not([type]), | ||
input:is([type=text], [type=search], [type=email], [type=password], [type=tel], [type=url], [type=number]), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is every textual input?
4a899fb
to
bb1a516
Compare
color: color-mix(in srgb, currentColor 50%, transparent); | ||
display: none; | ||
line-break: anywhere; | ||
grid-area: 1/1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Used to stack the elements atop each other. Not aware of a way to do this using flex?
} | ||
|
||
::placeholder { | ||
color: color-mix(in srgb, currentColor 50%, transparent); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possibly too low contrast (same would apply to disabled button-like text)
css-forms-1/Overview.bs
Outdated
::field-text { | ||
grid-area: 1/1; | ||
/* Should be cursor width but that's not exposed */ | ||
min-width: 1px; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure what to do about this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would maybe need adjusting based on this (e.g. using calc-size) #12019 (comment)
cc @mfreed7 due to your comments around flex layout. |
css-forms-1/Overview.bs
Outdated
textarea { | ||
display: inline-grid; | ||
padding-inline: 2px; | ||
field-sizing: content; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we maybe also want to set cursor to text for these?
fddd43a
to
84f8652
Compare
84f8652
to
0c5cee7
Compare
input:is([type=text], [type=search], [type=email], [type=password], [type=tel], [type=url], [type=number]), | ||
textarea { | ||
display: inline-grid; | ||
padding-inline: 2px; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be 0.125em? (2/16)
input:is([type=text], [type=search], [type=email], [type=password], [type=tel], [type=url], [type=number]) { | ||
overflow-x: auto; | ||
scrollbar-width: none; | ||
padding-block: 1px; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be 0.0625em? (1/16)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ideally padding should be consistent across select, buttons and inputs
|
||
textarea { | ||
overflow-y: auto; | ||
padding-block: 2px; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ditto
@nt1m do you have any thoughts on this? Currently we have nothing defined for these so it would be good to make some progress on it but we don't have a strong definition for placeholder or field-text yet? |
They seem reasonable, but also hard to verify without prototyping |
https://codepen.io/lukewarlow/pen/wBvqovL - here's a custom element with the applied styles that should demonstrate roughly what it looks like. |
|
||
::field-text { | ||
grid-area: 1/1; | ||
min-block-size: 1lh; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This probably needs a font-size: max(1em, 24px)
rule
grid-area: 1/1; | ||
min-block-size: 1lh; | ||
/* Should be cursor width but that's not exposed */ | ||
min-inline-size: 1px; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this actually be 24px? So the textarea/input is never smaller than 24px x 24px?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if this really belongs on field-text, ditto for min-block-size/font-size. Ideally they'd just inherit what they need from the parent.
No description provided.