2017-02-16 2 views
0

내 drupal 7 웹 사이트에서 달성하고자하는 목표는 이미지 이미지의 경계를 모든 이미지 (120x120)에 대해 일정 크기로 유지하면서 실제 이미지 자체는 이미지 스타일 (100x100)이며 중간 정렬됩니다. (명성 점수가 10 점이 아니기 때문에 예제 이미지를 제공 할 수 없습니다 ...)이미지 테두리가 120x120으로 유지되는 동안 이미지는 가로 세로 비율을 유지합니다.

인물 사진의 경우 높이는 100px로 제한되고 너비는 가로 세로 비율이됩니다 입니다. 너비가 100px로 제한되고 가로 세로 비율에 관계없이 가로 방향 이미지와 반대가됩니다.

모두 회색 테두리가 120x120 블록으로 유지되고 이미지 크기에 따라 변하지 않습니다.

내 웹 사이트의 코드가 필요하면 알려주십시오.

+0

http://codepen.io/anon/pen/BpeOzG 당신은 HTML, CSS, 가짜 이미지 코드 조각을 추가 할 수 있습니다. –

답변

0

목표를 달성하는 가장 간단한 방법은 테두리, 높이 및 너비가 설정된 divvertical-align: middle의 디스플레이 속성 인 table-cell을 사용하는 것입니다. img가 max-widthmax-height 속성을 100 %로 설정해야합니다. 따라서이 같은 HTML 구조를 갖는

<div class="img-container"> 
    <img src="..." /> 
</div> 

귀하의 CSS가 될 수있다 :

.img-container { 
    width: 120px; 
    height: 120px; 
    display: table-cell; 
    vertical-align: middle; 
} 

.img-container > img { 
    max-width: 100%; 
    max-height: 100%; 
    margin: 0 auto; 
    display: block; 
} 

Codepen는 결과를 보여주는 :

+0

귀하의 제안에 진심으로 감사드립니다. 거의 문제를 해결했습니다. 국경과 함께 일한 것 같지만 이미지 높이 문제는 남아 있습니다. 하단의 폴 아웃 (Fallout) 이미지를 보시면 다음과 같습니다 : [link] (http://bargains24.co.za/new-deals) 이것은 인젝터 모듈에 입력 된 CSS입니다 : 'code ' .field-type-image { 너비 : 140px; 신장 : 140px; 디스플레이 : table-cell; 세로 정렬 : 중간; 텍스트 정렬 : 가운데; } .field-type-image> img { 최대 너비 : 100 %; 최대 높이 : 100 %; } –

+0

이것은 인젝터 모듈에 입력 된 CSS입니다. '.field-type-image { width : 140px; 신장 : 140px; 디스플레이 : table-cell; 세로 정렬 : 중간; 텍스트 정렬 : 가운데; } .field-type-image> img { 최대 너비 : 100 %; 최대 높이 : 100 %; } ' –

+0

이미지와 테두리 사이에이 여분의 공간이 있다는 뜻입니까? 그렇다면 기본 이미지는 인라인으로 렌더링된다는 것입니다. 이는 문자 a, b, c, d 등과 같은 줄에 자리 잡는 것을 의미합니다.이 여분의 공백은 f, g, 와이. 문제를 해결하려면'.img-container> img''display : block;'에 추가하면 문제가 해결됩니다. 여기에서 디 센더에 대한 좋은 설명을 찾을 수도 있습니다. http://stackoverflow.com/questions/31444891/mystery-white-space-underneath-image-tag/31445364#31445364. – Marcin

관련 문제