집
웹 프론트엔드
CSS 튜토리얼
CSS와 Sass 정밀도의 이야기
백분율 레이아웃의 도전 : 브라우저 차이 및 부동 소수점 정밀 문제
백분율 레이아웃은 브라우저 불일치와 플로팅 포인트 정밀도의 사양 부족으로 인해 매우 어려운 일이며, 이는 정렬 및 정밀 문제로 이어질 수 있습니다.
SASS의 장점 : 정확도 및 코드 가독성 향상
Sass는 복잡한 계산을 처리하여 정밀도를 향상시키고 스타일 시트를보다 쉽게 읽고 업데이트 할 수있는 사전 처리기 스크립팅 언어입니다. 그러나 Sass의 기본 정밀 옵션은 5이므로 일부 경우에도 여전히 너무 낮을 수 있습니다.
기능 : 브라우저 계산 및 반올림
CSS 기능을 사용하면 브라우저가 계산 및 반올림을 처리 할 수 있으므로 더 나은 결과를 얻을 수 있습니다. 이 기능은 Sass Operation과 결합하여 CSS 정밀도를위한 두 세계의 최고를 제공합니다.
Edenspiekermann에서 우리는 코드 검토에 의존하여 제출 한 작업이 충분히 좋은지 확인합니다. 내가 종종 겪는 한 가지는 숫자 (특히 소수점이있는 숫자) 주변의 모호성입니다. 따라서 이것은이 문제를 명확히하는 것을 목표로하는 짧은 기사입니다.
초기 설정
시작하기 전에 전체 설명을 명확하게하기 위해, 우리는 작은 코드를 작업 할 것입니다. 이는 우리의 경우와 매우 관련이 있습니다. calc()
문제는 무엇입니까?
이 코드에 무엇이 잘못되었는지 궁금 할 것입니다. 외관에서 큰 문제는 없습니다. 이것은 3 열 그리드 레이아웃으로 매우 일반적입니다. calc(..)
그러나 그러나 33% 33%는 100%가 아닌 99%와 같습니다. 대부분의 경우 차이가 없지만 직선 정렬을 다룰 때 - 1%가 큰 영향을 줄 수 있습니다. 폭 14 픽셀 인 컨테이너의 1%는 14 픽셀입니다. 이것은 상당한 거리입니다.
왜 우리는 소수점을 더 정확하게 만들기 위해 소수점을 움직일 수 없습니까? 우리는 격차를 1.4 픽셀 또는 0.14 픽셀로 줄일 수 있습니다. 이는 더 이상 문제가되지 않는다고 생각합니다! 그런 다음 여기에서 시작하십시오.
는 더 잘 작동하지만 여전히 완벽하지는 않습니다. 존 알빈 윌킨스 (John Albin Wilkins)는이 기사에서“더러운 리틀 비밀의 반응 형 디자인”에서이 문제에 대해 광범위하게 논의합니다. 아직 읽지 않았다면 읽으십시오.
브라우저가 이것을 처리 할 수 없습니까?
이 시점에서 브라우저가 왜 작동 할 수 없는지 궁금 할 것입니다. 문제는 CSS 사양이 브라우저 공급 업체에게 (아이러니하게도) 비율 수의 부동 소수점 정밀도로 무엇을 해야하는지 (아이러니하게도) 지정하지 않는다는 것입니다. CSS 사양이 세부 사항을 생략하면 각 브라우저가 자체 방식으로 처리 할 수 있는지 확인할 수 있습니다.
위의 기사에서 다음 예제 :
어쨌든, 이것은 단순히 혼란 스럽고이 기사의 결론 에서이 문제를 다시 논의 할 것입니다.
Sass는 어떻습니까?
SASS는 수학 연산을 지원합니다. 이것은 새로운 것이 아닙니다. 실제로 SASS가 처음에 사용한 몇 가지 것 중 하나입니다 (수학 기반 그리드 시스템을 구축하기 위해). 우리는 컨테이너의 너비를 3 개의 동일한 부분으로 나누고 싶다고 Sass에게 알릴 수 있습니다.
위 내용은 CSS와 Sass 정밀도의 이야기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.