뷰 포트가 극히 작은 경우 (예 : 작은 화면의 세로) 응답하는 휴대 전화의 반응 형 페이지를 만들려고합니다. 나는 헤더에 3 가지 요소, 메뉴를위한 '햄버거', 로고/홈 링크 및 바스켓 아이콘을 가지고 있습니다. 사용자가 메뉴와 바구니 버튼을 사용할 수 있어야하며 뷰 포트 너비가 너무 작아 모든 콘텐츠를 수용 할 수 없으면 로고를 축소하려고합니다.반응 형 CSS; 이미지가 축소되지 않고 다음 줄로 이동합니다.
현재 너비가 축소되면 이미지가 크기가 줄어들지 않고 다음 줄로 떨어집니다.
마크 업 :
<header>
<div class="btn-menu">
<a href="" id="menubutton">
<img src="http://www.dabs.com/images/theme/mobile/dabs_com_v3/en/buttons/btn-menu3.png">
</a>
</div>
<div class="btn-home">
<a href="/" class="logo">
<img alt="Home" src="http://www.dabs.com/images/theme/mobile/dabs_com_v3/en/layout/logo-new.png">
</a>
</div>
<div class="btn-basket">
<a href="/basket" id="basketbutton" class="header-button">
<img alt="Basket" src="http://www.dabs.com/images/theme/mobile/dabs_com_v3/en/buttons/btn-basket2.png">
</a>
</div>
</header>
CSS :
header {
position: relative;
text-align: center;
z-index: 10001;
background-color: #fff;
border-bottom: 8px solid #cc0033;
height: 48px;
overflow: hidden;
width: 100%;
}
header div.btn-home > a, img {
height: auto;
max-width: 100%;
}
div.btn-menu {
display: inline-block;
float: left;
width: 48px;
}
div.btn-home {
display: inline-block;
max-width: 199px;
}
div.btn-basket {
width: 60px;
display: inline-block;
float: right;
position:
}
, 내가 그들을 변경할 의도하지 않으려하는 BTN-메뉴와 BTN-바구니에 고정 폭 만 BTN 가정의 필요 뷰 포트 크기에 응답합니다.
예를 들어 fiddle입니다. 뷰포트 축소를 시뮬레이션하기 위해 CSS 너비 전환이있는 버튼을 추가했습니다. 프로덕션에서는 가로 및 세로를 전환 할 때 적절한 크기로 렌더링하고 변경해야합니다. 오버플로 : 숨김은 이미지가 끝나는 위치를 표시하기 위해 비활성화됩니다.
굉장하고 좋은 해결책이며 철저하고 잘 설명 된 답변입니다. 커뮤니티에 대한 크레딧, 많은 감사합니다! 포지셔닝은 아마도 시도하지 않은 유일한 것 중 하나였습니다. 솔루션에 포함될 가능성이 높습니다. btn-home 선택기를 변경 한 것에 동의합니다. 내 것이 적절하지 않았습니다. 다시 한번 감사드립니다. –
이미지를 약간 크게하려면 최대 너비를 변경할 수도 있습니다. 이동하려는 위치가 마음에 들지 않으면 수직 정렬을 할 수도 있습니다 : 상단 또는 하단. – Termato
저는 가운데에 로고를 세로로 정렬하기 위해 jsfiddle로 놀아 왔습니다. 크기가 작을 때 전체 크기 아이콘 옆에 조금 부자연 스러울만큼 이미지 자체를 가지고 놀아도 좋을 것 같습니다. 좋은 제안. –