P粉5127298622023-08-15 18:45:05
CSS3 호환 브라우저의 경우 white-space-collapsing:discard
속성
참조: http://www.w3.org/TR/2010/WD-css3-text-20101005/#white-space-collapsing
P粉9174060092023-08-15 11:08:19
또는 flexbox를 사용하여 이전에 inline-block을 사용하여 달성했을 수 있는 많은 레이아웃을 구현할 수 있습니다: https://css-tricks.com/snippets/css/a-guide-to-flexbox/
이 답변이 꽤 유명해져서 다시 작성합니다.
실제 질문을 잊지 마세요:
이 문제는 CSS만으로 해결할 수 있지만 완전히 안정적인 CSS 수정 방법은 없습니다.
원래 답변에서 제가 제안한 해결책은 상위 요소에 font-size: 0
,然后在子元素中声明合理的font-size
를 추가하는 것이었습니다.
http://jsfiddle.net/thirtydot/dGHFV/1361/
이 기능은 모든 최신 브라우저의 최신 버전에서 작동합니다. IE8에서 작동합니다. Safari 5에서는 작동하지 않지만 Safari 6에서는 작동합니다. Safari 5는 거의 죽은 브라우저입니다(0.33%, 2015년 8월).
상대적인 글꼴 크기와 관련된 대부분의 문제는 복잡하지 않습니다.
그러나 HTML을 자유롭게 변경할 수 있는 경우(대부분의 사람들이 그렇습니다) 이는 합리적인 솔루션이지만 권장하지는 않습니다.
숙련된 웹 개발자로서 제가 이 문제를 실제로 해결한 방법은 다음과 같습니다.
으아악네, 바로 그거예요. HTML에서 인라인 블록 요소 사이의 공백을 제거했습니다.
쉽습니다. 이것은 매우 간단합니다. 그것은 어디에서나 작동합니다. 이것은 실용적인 솔루션입니다.
때로는 공백이 어디서 오는지 신중하게 생각해야 합니다. JavaScript를 사용하여 다른 요소를 추가하면 공백이 추가됩니까? 아니요, 올바르게 수행하면.
마법의 여행을 떠나 새로운 HTML을 사용하여 공백을 제거하는 다양한 방법에 대해 알아봅시다:
으아악내가 평소에 하던 일을 하시면 됩니다:
으아악http://jsfiddle.net/thirtydot/dGHFV/1362/
또는 이렇게 하세요:
으아악또는 댓글을 사용하세요:
으아악또는 PHP나 이와 유사한 것을 사용하는 경우:
으아악이제 "30dot의 공백을 제거하는 수천 가지 방법"이 지루해졌으니 잊어버리셨기를 바랍니다 font-size: 0
.