2012-09-25 8 views
5

मेरे कॉमिक पुस्तकों के स्थानीय संग्रह के लिए वेब इंटरफ़ेस बनाने का प्रयास करने के लिए छवि को संरेखित करें। लुक'फेल एप्पल के आईबुक के समान ही होना चाहिए - पुस्तकें बुकशेल्व पर बैठे हैं। कवर समान हैं लेकिन ऊंचाई और चौड़ाई में समान नहीं हैं। युक्त div की चौड़ाई को इंगित किए बिना छवि कवर को div के नीचे तक धक्का देना नहीं समझ सकता है। पूर्ण-अंदर-रिश्तेदार के साथ जाकर कवर को ढेर में ढेर कर देता है।बाएं-फ़्लोटेड div

HTML:

<div class="cover"><a href="#"><img src="cover1.jpg"></a></div> 
<div class="cover"><a href="#"><img src="cover2.jpg"></a></div> 
<div class="cover"><a href="#"><img src="cover3.jpg"></a></div> 

सीएसएस:

body {background-image: url(http://image.bayimg.com/oaddpaaea.jpg); background-repeat: repeat;} 
.cover {float: left; height: 258px; border: 1px solid red; margin: 0px 5px 25px 5px;} 
.cover img {border: 1px solid green; -webkit-box-shadow: 0 8px 6px -6px black; -moz-box-shadow: 0 8px 6px -6px black; box-shadow: 0 8px 6px -6px black;} 

jsFiddle उदाहरण: .cover यह आप स्थिति को जोड़ने के लिए अनुमति देता है के सापेक्ष: http://jsfiddle.net/NATqD/

+0

अरे 16 9 5 9 53! दिलचस्प सवाल (+1), हालांकि jsfiddle शायद यह नहीं दिखाता कि आप क्या दिखाना चाहते हैं – Cedric

+0

क्या आप इस बारे में बात कर रहे हैं: http://jsfiddle.net/userdude/NATqD/2/ –

उत्तर

4

इस सीएसएस का प्रयास करें:

.cover { float: left; height: 258px;line-height: 258px; border: 1px solid red; margin: 0px 5px 25px 5px;} 
.cover img {vertical-align: bottom; border: 1px solid green; -webkit-box-shadow: 0 8px 6px -6px black; -moz-box-shadow: 0 8px 6px -6px black; box-shadow: 0 8px 6px -6px black;} 

आप कवर div की ऊंचाई मैच के लिए line-height: 258px जोड़ें। फिर छवियों पर vertical-align: bottom। कार्य उदाहरण:

http://jsfiddle.net/NATqD/6/

+0

धन्यवाद! यह वही है जो मुझे दिमाग में था! – Shurik76

+0

ओह अच्छा। खैर, हाँ यह एक अच्छा विचार था ... –

+0

@ user1695953: आपका स्वागत है :) – Fredy

0

स्थिति जोड़े पूर्ण करने के लिए छवि और इस प्रकार आप पूरी तरह से div के सापेक्ष छवियों को स्थिति दे सकते हैं।

http://jsfiddle.net/NATqD/1/

+0

अपने प्रश्न में उन्होंने कहा कि वह कंटेनर पर चौड़ाई निर्दिष्ट नहीं करना चाहता था। आपके उत्तर में एक शामिल है। – mrtsherman

+1

यह सही है। मैं रन-टाइम में चौड़ाई या सेट को हार्ड-कोड नहीं करना चाहता हूं। विचार है कि div को कवर कवर छवि को लपेटने दें। – Shurik76

+0

आप चौड़ाई का उपयोग क्यों नहीं करना चाहते हैं? क्या ऐसा इसलिए है क्योंकि कवर छवियां अलग-अलग आकार हैं? – rsoneill21

1

यह मेरे लिए सबसे सीधी-सपाट लगता है:

फ़ायरफ़ॉक्स और क्रोम में
<div class="cover"> 
    <a href="#"><img src="http://www.emeraldinsight.com/fig/53_10_1108_S0731-9053_2009_0000024005.png"></a> 
    <a href="#"><img src="http://roborfid.dyndns.org/data/book_images/backs_small/SIWE_R_GM00404130.jpg"></a> 
    <a href="#"><img src="http://roborfid.dyndns.org/data/book_images/backs_small/SIWE_R_GM00624371.jpg"></a> 
    <a href="#"><img src="http://www.lauren-myers.com/_img/right_arrow.jpg"></a> 
    <a href="#"><img src="http://www.gotohoroscope.com/img/bg_00.gif"></a> 
    <a href="#"><img src="http://roborfid.dyndns.org/data/book_images/backs_small/SIWE_R_GM00404091.jpg"></a> 
    <a href="#"><img src="http://www.startplay.co.uk/images/play.png"></a> 
    <a href="#"><img src="https://www.educorporatebridge.com/old_back_up_16-07-12/images/foundcourses.png"></a> 
    <a href="#"><img src="http://s1.hao123.com/index/images/temple_bg.gif"></a> 
</div> 

.cover { 
    line-height: 258px; 
    height: 258px; 
    border: 1px solid red; 
    margin: 0px 5px 25px 5px; 
} 

http://jsfiddle.net/NATqD/5/

काम करता है।

+0

जैसे ही आप व्यूपोर्ट चौड़ाई/ऊंचाई (ब्राउज़र विंडो आकार) बदलते हैं, यह अलमारियों के साथ कवर को रिफ्लो करने के बजाय युक्त div के बाहर सभी छवियों को धक्का देता है। – Shurik76

+1

सही मिश्रण खोजने के लिए आप 'फ़ॉन्ट-आकार' और 'रेखा-ऊंचाई' का उपयोग कर सकते हैं। ऐसा लगता है कि यह बिल्कुल ठीक से लपेटता है, हालांकि मुझे लगता है कि आपके पास पुस्तकों के नीचे एक शेल्फ है जो क्षतिपूर्ति करने के लिए है: http://jsfiddle.net/NATqD/9/ –

+0

समझ गया। धन्यवाद! http://jsfiddle.net/FTrGs/ – Shurik76