Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

Use CSS property accent-color to tint form controls #328

Merged
merged 1 commit into from
Oct 19, 2021
Merged

Conversation

dhruvkb
Copy link
Member

@dhruvkb dhruvkb commented Oct 18, 2021

Fixes

Fixes #222 by @zackkrida

Description

This PR sets the trans-blue color as the accent color on the HTML root so that it automatically applies to form controls such as

  • checkboxes
  • radio buttons
  • sliders
  • progress bars

Other elements such as selections, markers etc. are tinted using the proper CSS rules associated with them.

Screenshots

With trans-blue accent:
accent

Without accent, default:
default

Testing Instructions

  1. Spin up the site using npm run dev.
  2. See the new accent color.
  3. In the dev tools toggle off the accent-color rule on the HTML root element.
  4. See the default accent color.
  5. Do step 3 repeatedly to see the slight difference between 2 and 4.

Checklist

  • My pull request has a descriptive title (not a vague title like Update index.md).
  • My pull request targets the default branch of the repository (main) or a parent feature branch.
  • My commit messages follow best practices.
  • My code follows the established code style of the repository.
  • I added or updated tests for the changes I made (if applicable).
  • I added or updated documentation (if applicable).
  • I tried running the project locally and verified that there are no visible errors.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.


Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

@dhruvkb dhruvkb added ✨ goal: improvement Improvement to an existing user-facing feature 🕹 aspect: interface Concerns end-users' experience with the software labels Oct 18, 2021
@dhruvkb dhruvkb marked this pull request as ready for review October 18, 2021 12:55
@dhruvkb dhruvkb requested a review from a team as a code owner October 18, 2021 12:55
Copy link
Contributor

@sarayourfriend sarayourfriend left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested in Firefox and Safari. Works great in Firefox but doesn't appear to do anything in Safari.

Captura de Tela 2021-10-18 às 07 20 17

Was the intention to cover all browsers with this change?

@dhruvkb
Copy link
Member Author

dhruvkb commented Oct 18, 2021

@sarayourfriend Safari does not support accent-color yet.

Copy link
Contributor

@sarayourfriend sarayourfriend left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay! If all we're doing is using accent-color only then this LGTM. If we wanted to cover all browsers with uniform checkboxes we could copy the styles from Gutenberg's CheckboxControl component.

Otherwise LGTM!

@dhruvkb
Copy link
Member Author

dhruvkb commented Oct 18, 2021

I don't think it's right to dismiss Safari. I'll check out the Gutenberg styles and see if we can bring Safari to parity. It'll have to be a separate PR because Gutenberg uses appearance: none and styles the component almost from scratch.

Copy link
Member

@zackkrida zackkrida left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool! Looking into Safari is a welcome addition 👍

@dhruvkb dhruvkb changed the title Set accent-color to tint form controls Use CSS property accent-color to tint form controls Oct 19, 2021
@dhruvkb dhruvkb merged commit 60d7e86 into main Oct 19, 2021
@dhruvkb dhruvkb deleted the accent_color branch October 19, 2021 11:40
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
🕹 aspect: interface Concerns end-users' experience with the software ✨ goal: improvement Improvement to an existing user-facing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature] Use css accent-color for ui control styling
3 participants