HOME > > >

CSSでmin-height、min-widthをクロスブラウザにする最も簡単な方法

下記サイトにて紹介されているmin-heightとmin-widthをレガシーブラウザでも対応できるようにするCSSハックがかなり使える感じです。

divの背景に画像を設定した場合など、div内のコンテンツ量が少ないと背景が途中でちょん切れちゃうのでmin-heightを 利用しますがブラウザによっては効かなかったりして個別にhackする必要あったのですが、これを利用すれば解決しそうですね。

HTML

  1.  
  2. <div id="tec01">
  3.     <h4>ハックなし</h4>
  4.     <div id="noMin">
  5.         <p>test</p>
  6.     </div>
  7.  
  8.     <h4>ハックあり</h4>
  9.     <div id="setMin">
  10.         <p>test</p>
  11.     </div>
  12. </div>
  13.  

CSS

  1.  
  2. #tec01 #noMin {
  3.     min-height:200px;
  4.     min-width:200px;
  5.     background: url(min.gif) no-repeat left top;
  6. }
  7.  
  8. #tec01 #setMin {
  9.     /* min-height */
  10.     min-height:200px;
  11.     height: auto !important;
  12.     height: 200px;
  13.  
  14.     /* min-width */
  15.     min-width:200px;
  16.     width: auto !important;
  17.     min-width:200px;
  18.  
  19.     background: url(min.png) no-repeat left top;
  20.     _background: none;
  21.     filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='min.png', sizingMethod='crop');
  22. }
  23.  

実行結果

ハックなし

test

ハックあり

test