기본적으로 body
요소는 물론 100%
너비를 차지하므로 브라우저 창의 크기가 조정되면이 너비가 픽셀이 분명히 줄어 듭니다. 모든 픽셀에 대해 body
너비가 감소되었습니다. 요소 그룹 (header
, main
및 footer
)의 패딩을 1 픽셀 씩 늘려야합니다. 어디서부터 시작해야할지 모르겠습니다. 여기에 기본이 설정 : 브라우저 창 크기를 조정Y 요소의 너비가 감소 할 때 X 요소의 패딩 증가
function start() {
//code here..
}
start();
@import url('https://necolas.github.io/normalize.css/latest/normalize.css');
* {
box-sizing: border-box;
}
html, body {
height: 100%;
}
body, header, main, footer {
padding: 1%;
}
header, main, footer {
height: 33.333%;
}
div {
height: 100%;
background-color: #444;
color: #ddd;
}
p {
margin: 0;
padding: 0;
position: relative;
top: 50%;
transform: translateY(-50%);
text-align: center;
}
<header>
<div>
<p>When this snippet is made <b>Full page</b>.</p>
</div>
</header>
<main>
<div>
<p>And the browser window width is <i>decreased</i>.</p>
</div>
</main>
<footer>
<div>
<p>The padding on these rectangles should <i>increase</i>.</p>
</div>
</footer>
및 body
폭 이 감소 나는 비례 header
, width
및 height
에 증가에 패딩 값을합니다.
원래 CSS를 사용하는 JavaScript없이 viewport 단위를 달성하려고 시도했습니다. 그게 잘 풀리지 않았어.
PS : Jquery를 사용하지 않으려 고합니다.
편집 : 난 그냥이 실현하지만, 기본 패딩 동작을 포함하는 요소 폭 감소 등의 가치 감소에 있음을 지적 가치가있을 수도 있습니다. 모두 상단 & 하위로 우측 padding
가 컨테이너에 의해 계산된다 & 왼쪽 폭 내 단편의 크기가 변경되었을 때 알 수있는 바와 같이.
이것은 흥미 롭습니다. 이것에 대해 몇 가지 실험을하고 있습니다. 이처럼 재밌는 일은 내 첫 번째 본능 이었지만 나는 계속 실패했다. –
이것은 사실 많은 픽셀 단위를'vh'로 바꾸면서 훌륭하게 작동합니다. '패딩 : calc (80vh - 120vw)'이 나를 위해 그것을했다. 고맙습니다. –