모든 테이블에 대해 정의 된 다음 CSS 스타일을 재정의하고 싶습니다.
table {
font-size: 12px;
width: 100%;
min-width: 400px;
display:inline-table;
}
클래스가있는 특정 테이블이 'other'
있습니다.
마지막으로 테이블 장식은 다음과 같아야합니다.
table.other {
font-size: 12px;
}
그래서 내가 3 개 속성을 제거 할 필요가 : width
, min-width
및display
none
또는 로 재설정하려고 시도했지만 auto
도움이되지 않았습니다. 다음 경우를 의미합니다.
table.other {
width: auto;
min-width: auto;
display:auto;
}
table.other {
width: none;
min-width: none;
display:none;
}
답변
첫 번째 속성 집합이 작동하지 않는 이유는에 대한 auto
값 이 없기 때문에 display
속성을 무시해야한다고 생각합니다. 이 경우 inline-table
에도 여전히 width
적용되며 inline
요소에 적용되지 않으므로 해당 속성 세트는 아무 것도 수행하지 않습니다.
두 번째 속성 집합은 단순히 테이블을 숨 깁니다 display: none
.
table
대신 재설정 해보십시오 .
table.other {
width: auto;
min-width: 0;
display: table;
}
편집 : min-width
기본값은 0
아닌auto
답변
“없음”은 사용자가하는 것을하지 않습니다. CSS 속성을 “지우려면”CSS 표준에서 정의한 기본값으로 다시 설정해야합니다. 따라서 좋아하는 참조에서 기본값을 찾아야합니다.
table.other {
width: auto;
min-width: 0;
display:table;
}
답변
Set min-width: inherit /* Reset the min-width */
이 시도. 작동합니다.
답변
display
테이블 의 기본 속성은 display:table;
입니다. 다른 유용한 값은 inline-table
입니다. 다른 모든 display
값은 테이블 요소에 유효하지 않습니다.
auto
Javascript로 작업하는 경우 빈 문자열로 설정하면 트릭을 수행 할 수 있지만 기본값으로 재설정 하는 옵션 은 없습니다 .
width:auto;
유효하지만 기본값이 아닙니다. 테이블의 기본 너비는 100%
이며 width:auto;
요소는 필요한만큼만 너비를 차지합니다.
min-width:auto;
허용되지 않습니다. 을 설정 min-width
하면 값이 있어야하지만 0으로 설정하면 기본값으로 재설정하는 것이 좋습니다.
답변
글쎄, display: none;
테이블을 전혀 표시하지 않을 것입니다 display: inline-block;
.’auto ‘로 남아있는 너비 및 최소 너비 선언으로 시도 하십시오.
답변
나는 모든 것을 완벽하게하기 위해 Javascript를 사용했습니다.
내 JS 바이올린 : https://jsfiddle.net/QEpJH/612/
HTML :
<div class="container">
<img src="http://placekitten.com/240/300">
</div>
<h3 style="clear: both;">Full Size Image - For Reference</h3>
<img src="http://placekitten.com/240/300">
CSS :
.container {
background-color:#000;
width:100px;
height:200px;
display:flex;
justify-content:center;
align-items:center;
overflow:hidden;
}
JS :
$(".container").each(function(){
var divH = $(this).height()
var divW = $(this).width()
var imgH = $(this).children("img").height();
var imgW = $(this).children("img").width();
if ( (imgW/imgH) < (divW/divH)) {
$(this).addClass("1");
var newW = $(this).width();
var newH = (newW/imgW) * imgH;
$(this).children("img").width(newW);
$(this).children("img").height(newH);
} else {
$(this).addClass("2");
var newH = $(this).height();
var newW = (newH/imgH) * imgW;
$(this).children("img").width(newW);
$(this).children("img").height(newH);
}
})
답변
최소 너비 설정을 되 돌리는 가장 좋은 방법은 다음과 같습니다.
min-width: 0;
min-width: unset;
unset은 사양에 있지만 일부 브라우저 (IE 10)는이를 존중하지 않으므로 대부분의 경우 0이 좋은 대체입니다 . 최소 폭 : 0;