2010-08-14 13 views
5

यह अविश्वसनीय रूप से तुच्छ होना चाहिए, लेकिन ऐसा नहीं है। मेरे पास एंकर के लिए पूर्वनिर्धारित ऊंचाई है, और मैं नीचे पाठ को रखना चाहता हूं।पूर्वनिर्धारित ऊंचाई होने पर नीचे पाठ को कैसे रखें!

<li><a class="my-text">My Text</a></li> 

मैंने निम्नलिखित सीएसएस का उपयोग किया, जो काम नहीं करता है। पाठ अभी भी शीर्ष पर दिखाई देता है।

a.my-text { 
    background-color:#cccc; 
    height:50px; 
    vertical-align:bottom; 
    width:100px; 
} 

विचार है: मैं नीचे करने के लिए पाठ संरेखित करना चाहते हैं, लेकिन अगर वहाँ पाठ है कि एक पंक्ति से अधिक लंबी है, मैं प्रवाह शीर्ष पर जाने के लिए, सब कुछ किसी और नीचे धक्का नहीं करना चाहता .. यह कैसे प्राप्त किया जा सकता है के बारे में कोई विचार?

उत्तर

2

यह सीएसएस और आपके द्वारा प्रदान किए जाने वाले एचटीएमएल का उपयोग करके नहीं किया जा सकता है। आप लंगर में एक अतिरिक्त अवधि डालें, तो वह किया जा सकता है:

a.my-text { 
    height: 50px; 
    display: block; 
} 
a.my-text span { 
    position: absolute; 
    bottom: 0; 
} 
+0

और a.my-पाठ padding-top: 45px की तरह कुछ का उपयोग करने के लिए की जरूरत है की तरह: करने के लिए ऊंचाई के लिए {प्रदर्शन ब्लॉक} "काम" ... – darma

+0

आपका मतलब है स्थिति: पूर्ण। 'स्थिति: रिश्तेदार; नीचे: 0; 'कहीं भी –

+0

तत्व को स्थानांतरित नहीं करेगा। मैं एक डंबस हूँ। अब संपादित किया गया –

2

आप लंगर में position:absolute साथ bottom:0px उपयोग कर सकते हैं।

एचटीएमएल

<li><a class="my-text">My Text</a></li> 

सीएसएस

li { 
    position: relative; 
    height:200px; 
    border: 1px solid red; 
} 

a.my-text { 
    bottom: 0px; 
    border: 1px solid blue; 
    position: absolute; 
    background-color:#cccc; 
    width:100px; 
    height:50px; 
} 

jsfiddle में देखें।

1

यह निश्चित रूप से काम नहीं करेगा, क्योंकि <a> एंकर इनलाइन टैग हैं, इसलिए उन्हें ऊंचाई और चौड़ाई असाइन करना बेकार है। vertical-align संपत्ति उस लाइन के संबंध में इनलाइन तत्वों की स्थिति निर्धारित करती है, जो टेक्स्ट की ऊर्ध्वाधर स्थिति नहीं है। (http://reference.sitepoint.com/css/vertical-align देखें) जहां तक ​​मैं समझता हूं कि आप जो अनुरोध कर रहे हैं वह नहीं किया जा सकता है। हालांकि, समान प्रभाव प्राप्त करने के लिए उपर्युक्त सुझाव दिए गए विकल्प हैं।

1

आपके कोड के साथ समस्या यह है कि एंकर ऊंचाई/चौड़ाई का जवाब नहीं देगा क्योंकि यह एक इनलाइन तत्व है। यदि आप {डिस्प्ले: ब्लॉक} एंकर में अब एक ब्लॉक तत्व जोड़ते हैं, लेकिन, जैसा कि मुझे याद है, वर्टिकल-एलाइन ब्लॉक तत्वों की सामग्री पर काम नहीं करता है। यह डिस्प्ले का उपयोग करने का सबसे आसान तरीका था: टेबल-सेल

a.my-text { 
    background-color: #ccc; 
    height: 200px; width: 100px; 
    vertical-align: bottom; 
    display: table-cell; 
} 
+0

स्कॉट, मैंने थोड़ी देर पहले उस समाधान का उपयोग किया है, लेकिन यह मेरे बाकी सीएसएस के लिए एक अजीब परिणाम का कारण बन गया है ... मैं इसे एक और कोशिश दूंगा और देखें कि क्या होता है! – Mohamad

0

ऐसा लगता है तुम सिर्फ ऊंचाई शासन के एंकर टैग पर छुटकारा मिलता है और पर li

+0

नहीं, यह काम नहीं करेगा। क्योंकि अगर एंकर टेक्स्ट एक से अधिक पंक्ति पर कब्जा कर लेता है, तो एंकर के नीचे की सामग्री को एंकर टेक्स्ट को धक्का देने के बजाय नीचे धकेल दिया जाएगा। – Mohamad

संबंधित मुद्दे