위와 같이 placeholder 속성에 @@iptPlaceholder라는 이상한 속성값이 들어가는 것을 확인.
해당 부분인데, gulp-file-include 모듈을 사용한 부분입니다.
그렇기 때문에 해당 전달값이 없을 경우엔 @@inpPlaceholder 값이 그대로 들어가버리는 것입니다.
이를 해결하기 위해 위와 같이 빈 문자열을 추가해줍니다.
위와 비슷한 이슈입니다.
그래서 위와 같이 JSON 객체로 className 속성을 전달하고,
layer.html에서 위처럼 작성해서 className 속성을 받도록 하였습니다.
이를 해결하고자 위에처럼 @@if문을 사용했습니다.
이러한 문제를 해결하기 위해 gulpfile.js에서 위와 같이 className 속성을 모든 페이지에서 인식할 수 있도록 적어줬습니다.
<ul>
<li>Lorem ipsum dolor sit amet.</li>
<li>consectetur adipisicing elit. <span>Odit, porro!</span></li>
</ul>
ul { font-size: 15px; line-height: 1em; }
li { font-size: 10px; }
span { font-size: 80%; }
ul 요소의 줄 간격은 15px로 계산되어집니다.
ul { font-size: 15px; line-height: 1em; }
li { font-size: 10px;; line-height: 15px; }
span { font-size: 80%; line-height: 15px; }
물론 li 요소에 명시적으로 line-height 다른 값을 부여하면 재선언되겠지만 사용자 의도에 따라 불필요할 수 있습니다.
참고로 위 CSS에서 line-height 의 다른 값을 적용하게 하려면 span 요소를 인라인블록 요소로 바꾸어 주어야 합니다.
이제 줄 간격 값에서 em 단위를 제거하고 단위없는 정수로만 사용한다고 가정해 봅니다.
ul { font-size: 15px; line-height: 1; }
li { font-size: 10px; }
span { font-size: 80%; }
위와 같이 단위없는 줄 간격을 선언하게 되면 이제 li 요소와 span 요소로 그 숫자가 전달되게 됩니다. li 요소의 font-size 가 10px 이므로 자식 요소인 font-size 가 80%이르로 10px 의 80% 로 font-size 는 8px 입니다.
위에서 선언한 line-height: 1; 로 인해 CSS 는 다음과 같은 값을 지니게 될 것입니다.
ul { font-size: 15px; line-height: 1; }
li { font-size: 10px; line-height: 10px; }
span { font-size: 80%; line-height: 8px; }
이러한 이유 때문에 html 요소나 body 요소, 혹은 자손 요소가 있는 모든 요소에 줄 간격을 단위 없이 숫자만 사용하는 것이 많은 이점을 가져올 수 있습니다.
추론