2016-04-04 10 views
1

ラジオボタンをクリックしたときに個々の画像を表示する画像表示があります。ラジオボタンに関連付けられた画像は、その位置で垂直方向にシフトします。以下の例では3つのラジオボタンが付いた3つの画像が表示されています。ラインの高さを0に設定しようとしましたが、ホワイトスペースを試しました。しかし動作しませんでした。どんな助けもありがとう。css3垂直画像シフトを防止

<style> 
 
    #imgflow { 
 
    \t width: 60%; 
 
    \t overflow: hidden; 
 
    \t text-align:center; 
 
    \t margin:0 auto; 
 
    } 
 
    #imf_holder article img { 
 
    \t width: 100%; 
 
    } 
 
    #imf_holder .inner { 
 
    \t width: 100%; 
 
    \t line-height: 0; 
 
    } 
 
    #imf_holder article { 
 
    \t width: 100%; 
 
    } 
 
    .img-control { 
 
    \t display: block; 
 
    \t text-align: center; 
 
    } 
 
    input[type="radio"] ~.ps{ 
 
    \t display:none; 
 
    } 
 
    input[type="radio"]:checked ~.ps{ 
 
    \t display:block; 
 
    
 
    } 
 
    input[type=radio] { 
 
     opacity: 0; 
 
    } 
 
    </style> 
 
    
 
    <html> 
 
    <div id="imf_holder"> 
 
      <div id="imgflow"> 
 
       <div class="inner"> 
 
       <article> 
 
     \t \t \t \t 
 
    \t \t \t \t <input type="radio" checked value="Img1" name="event" id="img-1" ><div class="ps"> <img src="http://www.gettyimages.pt/gi-resources/images/Homepage/Hero/PT/PT_hero_42_153645159.jpg" height="200px" ></div> 
 
    \t \t \t \t 
 
    \t \t \t </article> 
 
       <article> 
 
     \t \t \t \t 
 
    \t \t \t \t <input type="radio" value="Img1" name="event" id="img-2" ><div class="ps"> <img src="http://www.hdwallpapery.com/static/images/Winter-Tiger-Wild-Cat-Images_vwV1tOp.jpg" height="200px" ></div> 
 
    \t \t \t \t 
 
    \t \t \t </article> 
 
       <article> 
 
     \t \t \t \t 
 
    \t \t \t \t <input type="radio" value="Img1" name="event" id="img-3" ><div class="ps"> <img src="http://eskipaper.com/images/images-4.jpg" height="200px" ></div> 
 
    \t \t \t \t 
 
    \t \t \t </article> 
 
     
 
       </div> 
 
    
 
      </div> 
 
    
 
    </div> 
 
    
 
    <div style="margin-left:20px;margin-right:20px;margin-top:15px;"> 
 
     <li class="img-control"> 
 
      <label for="img-1" >button1 </label> 
 
      <label for="img-2" >button2 </label> 
 
      <label for="img-3" >button3 </label> 
 
    
 
     </li> 
 
    </div>

+0

トリック。あなたの返事を感謝します – user3616577

答えて

2

使用opacityは、彼らが目に見えないですが、まだそれゆえ画像を押し下げ、スペースを占有するときのように、あなたのinputdisplay: none;に設定してください。

input[type=radio] { 
    display: none; 
} 

サンプルスニペット

#imgflow { 
 
    width: 60%; 
 
    overflow: hidden; 
 
    text-align:center; 
 
    margin:0 auto; 
 
} 
 
#imf_holder article img { 
 
    width: 100%; 
 
} 
 
#imf_holder .inner { 
 
    width: 100%; 
 
} 
 
#imf_holder article { 
 
    width: 100%; 
 
} 
 
.img-control { 
 
    display: block; 
 
    text-align: center; 
 
} 
 
input[type="radio"] ~ .ps{ 
 
    display:none; 
 
} 
 
input[type="radio"]:checked ~ .ps{ 
 
    display:block; 
 

 
} 
 
input[type=radio] { 
 
    display: none; 
 
}
<div id="imf_holder"> 
 
     <div id="imgflow"> 
 
      <div class="inner"> 
 
      <article> 
 

 
       <input type="radio" checked value="Img1" name="event" id="img-1" ><div class="ps"> <img src="http://www.gettyimages.pt/gi-resources/images/Homepage/Hero/PT/PT_hero_42_153645159.jpg" height="200px" ></div> 
 

 
      </article> 
 
      <article> 
 

 
       <input type="radio" value="Img1" name="event" id="img-2" ><div class="ps"> <img src="http://www.hdwallpapery.com/static/images/Winter-Tiger-Wild-Cat-Images_vwV1tOp.jpg" height="200px" ></div> 
 

 
      </article> 
 
      <article> 
 

 
       <input type="radio" value="Img1" name="event" id="img-3" ><div class="ps"> <img src="http://eskipaper.com/images/images-4.jpg" height="200px" ></div> 
 

 
      </article> 
 

 
      </div> 
 

 
     </div> 
 

 
</div> 
 

 
<div style="margin-left:20px;margin-right:20px;margin-top:15px;"> 
 
    <li class="img-control"> 
 
     <label for="img-1" >button1 </label> 
 
     <label for="img-2" >button2 </label> 
 
     <label for="img-3" >button3 </label> 
 

 
    </li> 
 
</div> 
 

0

はちょうどこのようなあなたのinputsは絶対にする:あなたが示唆したように、私は不透明度ウィット表示なしを交換しないと、それはやった

input[type=radio] { 
    opacity: 0; 
    position:absolute; 
} 
関連する問題