-
Notifications
You must be signed in to change notification settings - Fork 22.8k
fix outdated Safari compatibility note for appearance: none
#39876
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
fix outdated Safari compatibility note for appearance: none
#39876
Conversation
This PR updates the compatibility information for the CSS property `appearance: none`. Previously, the MDN note incorrectly stated that Safari does not support `appearance: none`. However, this limitation only applied to older versions of Safari. Modern Safari versions (from Safari 16 onwards) support it properly. This correction improves the accuracy of the documentation and ensures developers are not misled by outdated notes.
Preview URLs External URLs (4)URL:
(comment last updated: 2025-06-11 08:41:47) |
…rm_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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.
Hi @mohammad-kenaan, and thanks for your concern.
However, this isn't saying that Safari doesn't support appearance: none
. This is saying that setting appearance: none
is useful because it allows you to get around the restrictions on styling search inputs in Safari.
Also, the release notes you link to don't say that appearance: none
is supported as of Safari 16. It says "Removed most non-standard CSS appearance values."
So, it sounds like there is a misunderstanding here, and that you are conflating something unrelated with the main point of the PR.
If we could find some solid evidence of search inputs being fully stylable as of a certain version of Safari, that would warrant a change.
Thanks for the clarification, Chris! You're absolutely right that the current note focuses on styling restrictions in Safari. However, I’d like to clarify that the specific example mentioned — being unable to style Would it make sense to update the note to specify that this restriction applies only to older versions of Safari? This way, developers won’t be misled into thinking they still need |
@mohammad-kenaan Right, I see what you mean now. I don't think we need such a large section to cover this issue anymore, now it has been fixed in Safari for a few versions. What do you think about cutting the content of this section down to something like this:
? |
What a great idea. I'll update the assignment right away. |
Being unable to style font-size on <input type="search"> — no longer applies in Safari 16 and newer. I tested this directly on Safari 18.5 on macOS and was able to set font-size without needing appearance: none;. This way, developers won’t be misled into thinking they still need appearance: none; for such basic styling.
files/en-us/learn_web_development/extensions/forms/advanced_form_styling/index.md
Outdated
Show resolved
Hide resolved
…rm_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…rm_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…rm_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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.
@mohammad-kenaan couple more bits for you; very close now!
@@ -100,27 +100,16 @@ In most cases, the effect is to remove the stylized border, which makes CSS styl | |||
|
|||
### Taming search boxes | |||
|
|||
[`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) is basically just a text input, so why is `appearance: none;` useful here? The answer is that Safari search boxes have some styling restrictions — you can't adjust their `height` or `font-size` freely, for example. | |||
[`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) is basically just a text input, so why is `appearance: none;` useful here? The `appearance: none;` value used to be particularly useful for consistently styling input type="search" elements. Without it, Safari didn't allow {{cssxref("height")}} or {{cssxref("font-size")}} values to be set on them. However, this is no longer the case in Safari 16 and later. You may still want to target `input[type="search"]` explicitly with `appearance: none;` if your browser support matrix includes Safari versions older than 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.
[`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) is basically just a text input, so why is `appearance: none;` useful here? The `appearance: none;` value used to be particularly useful for consistently styling input type="search" elements. Without it, Safari didn't allow {{cssxref("height")}} or {{cssxref("font-size")}} values to be set on them. However, this is no longer the case in Safari 16 and later. You may still want to target `input[type="search"]` explicitly with `appearance: none;` if your browser support matrix includes Safari versions older than 16. | |
The `appearance: none;` value used to be particularly useful for consistently styling [`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) elements. Without it, Safari didn't allow {{cssxref("height")}} or {{cssxref("font-size")}} values to be set on them. However, this is no longer the case in Safari 16 and later. You may still want to target `input[type="search"]` explicitly with `appearance: none;` if your browser support matrix includes Safari versions older than 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.
I don't think that first line fits well anymore.
@@ -100,27 +100,16 @@ In most cases, the effect is to remove the stylized border, which makes CSS styl | |||
|
|||
### Taming search boxes |
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.
### Taming search boxes | |
### Search boxes and `appearance` |
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.
We're not really doing as much taming any more ;-)
Replaced the old "Taming search boxes" heading to better reflect modern browser behavior with search boxes, as suggested by @chrisdavidmills.
|
||
[`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) is basically just a text input, so why is `appearance: none;` useful here? The answer is that Safari search boxes have some styling restrictions — you can't adjust their `height` or `font-size` freely, for example. | ||
The `appearance: none;` value used to be particularly useful for consistently styling [`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) elements. Without it, Safari didn't allow {{cssxref("height")}} or {{cssxref("font-size")}} values to be set on them. However, this is no longer the case in Safari 16 and later. You may still want to target `input[type="search"]` explicitly with `appearance: none;` if your browser support matrix includes Safari versions older than 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.
[mdn-linter] reported by reviewdog 🐶
The `appearance: none;` value used to be particularly useful for consistently styling [`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) elements. Without it, Safari didn't allow {{cssxref("height")}} or {{cssxref("font-size")}} values to be set on them. However, this is no longer the case in Safari 16 and later. You may still want to target `input[type="search"]` explicitly with `appearance: none;` if your browser support matrix includes Safari versions older than 16. | |
The `appearance: none;` value used to be particularly useful for consistently styling [`<input type="search">`](/en-US/docs/Web/HTML/Reference/Elements/input/search) elements. Without it, Safari didn't allow {{cssxref("height")}} or {{cssxref("font-size")}} values to be set on them. However, this is no longer the case in Safari 16 and later. You may still want to target `input[type="search"]` explicitly with `appearance: none;` if your browser support matrix includes Safari versions older than 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.
Awesome, thanks again @mohammad-kenaan! I think this is ready to merge now.
(I also ran the markdown through Grammarly and made some general improvements to the grammar. I hope you don't mind)
) * fix outdated Safari compatibility note for `appearance: none` This PR updates the compatibility information for the CSS property `appearance: none`. Previously, the MDN note incorrectly stated that Safari does not support `appearance: none`. However, this limitation only applied to older versions of Safari. Modern Safari versions (from Safari 16 onwards) support it properly. This correction improves the accuracy of the documentation and ensures developers are not misled by outdated notes. * Update files/en-us/learn_web_development/extensions/forms/advanced_form_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * fix outdated Safari compatibility note for appearance: none Being unable to style font-size on <input type="search"> — no longer applies in Safari 16 and newer. I tested this directly on Safari 18.5 on macOS and was able to set font-size without needing appearance: none;. This way, developers won’t be misled into thinking they still need appearance: none; for such basic styling. * Update files/en-us/learn_web_development/extensions/forms/advanced_form_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update files/en-us/learn_web_development/extensions/forms/advanced_form_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update files/en-us/learn_web_development/extensions/forms/advanced_form_styling/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * chore: clean up spacing and minor text adjustment * docs: update heading to "Search boxes and `appearance`" Replaced the old "Taming search boxes" heading to better reflect modern browser behavior with search boxes, as suggested by @chrisdavidmills. * fix: remove double space after markdown link * some grammar cleanup --------- Co-authored-by: Chris Mills <chrisdavidmills@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This PR updates the compatibility information for the CSS property
appearance: none
.Previously, the MDN note incorrectly stated that Safari does not support
appearance: none
. However, this limitation only applied to older versions of Safari. Modern Safari versions (from Safari 16 onwards) support it properly.This correction improves the accuracy of the documentation and ensures developers are not misled by outdated notes.
Description
Clarified that Safari 16+ removed styling restrictions on , allowing appearance: none; for flexible styling.
Motivation
The previous documentation was outdated regarding Safari's behavior. This update improves accuracy and helps developers style search inputs consistently.
Additional details
Safari 16 Release Notes
Related issues and pull requests