Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(styles): fix to explicitly initialize CSS variables (#1846)
<!-- How to write a good PR title: - Follow [the Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/). - Give as much context as necessary and as little as possible - Prefix it with [WIP] while it’s a work in progress --> ## Self Checklist - [x] I wrote a PR title in **English** and added an appropriate **label** to the PR. - [x] I wrote the commit message in **English** and to follow [**the Conventional Commits specification**](https://www.conventionalcommits.org/en/v1.0.0/). - [x] I [added the **changeset**](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md) about the changes that needed to be released. (or didn't have to) - [x] I wrote or updated **documentation** related to the changes. (or didn't have to) - [x] I wrote or updated **tests** related to the changes. (or didn't have to) - [x] I tested the changes in various browsers. (or didn't have to) - Windows: Chrome, Edge, (Optional) Firefox - macOS: Chrome, Edge, Safari, (Optional) Firefox ## Related Issue <!-- Please link to issue if one exists --> <!-- Fixes #0000 --> ## Summary <!-- Please brief explanation of the changes made --> #1837 에서 이어집니다. d074178 부터 CSS variable을 사용할 때 명시적으로 Rule 안에서 초깃값을 지정하도록 합니다. ## Details <!-- Please elaborate description of the changes --> - CSS variable(CSS Custom property)의 값은 상속의 대상이 되기 때문에, 명시적으로 값을 초기화해두지 않으면 부모의 값을 상속하게 됩니다. - 이전 Box 등의 레이아웃 컴포넌트를 구현할 때, 공용 margin 속성 및 layout 속성에 초기화 대신 fallback 값으로만 기본값을 정의해두었습니다. - 이렇게 구현할 경우, 부모에 같은 스타일이 있으면(e.g. `--b-margin: 10px`) 자식 엘리먼트가 fallback 값을 적용하지 않고 **부모의 스타일을 적용하게됩니다.** - 이를 명시적으로 기본값을 부여하여 해결했습니다. 기본적으로 `initial` 키워드로 브라우저 기본값을 따랐고, margin/padding 등 shorthand property에서는 shorthand property로 initial 키워드를 사용할 수 없으므로(`margin: initial initial initial initial => invalid`) MDN 문서를 참고하여 속성의 기본값을 직접 지정해주었습니다. - border-style의 경우 기본값이 `none` 이므로, border-width가 있을 때 별도의 style 지정 없이도 바로 보일 수 있게 `solid` 로 지정했습니다. - border-width의 경우 기본값이 `middle` 이므로, border-width가 없을 때 보이지 않도록 `0` 으로 지정했습니다. ### Breaking change? (Yes/No) <!-- If Yes, please describe the impact and migration path for users --> No ## References <!-- Please list any other resources or points the reviewer should be aware of --> - https://developer.mozilla.org/ko/docs/Web/CSS/Using_CSS_custom_properties#%EC%82%AC%EC%9A%A9%EC%9E%90_%EC%A7%80%EC%A0%95_%EC%86%8D%EC%84%B1%EC%9D%98_%EC%83%81%EC%86%8D - https://github.com/Shopify/polaris/blob/main/polaris-react/src/components/Box/Box.module.scss
- Loading branch information