2010-04-27 18 views
8

मैं इस तरह एक सीएसएस तालिका सेटअप:सीएसएस प्रदर्शन: तालिका पहले कॉलम भी चौड़ा

<div class='table'> 
<div> 
    <span>name</span> 
    <span>details</span> 
</div> 
</div> 

तालिका के लिए सीएसएस है:

.table{ 
display:table; 
width:100%; 
} 
.table div{ 
text-align:right; 
display:table-row; 
border-collapse: separate; 
border-spacing: 0px; 
} 
.table div span:first-child { 
text-align:right; 
} 
.table div span { 
vertical-align:top; 
text-align:left; 
display:table-cell; 
padding:2px 10px; 
} 

यह खड़ा के रूप में दो कॉलम सामान रूप से विभाजित कर रहे हैं तालिका की चौड़ाई से कब्जा कर लिया अंतरिक्ष के बीच। मैं, पहले कॉलम केवल कब्जे यह कोशिकाओं

तालिका एक अज्ञात चौड़ाई है पाठ द्वारा के रूप में व्यापक रूप में की जरूरत है होना करने के लिए प्राप्त करने के लिए के रूप में कॉलम/कोशिकाएं होती हैं कोशिश कर रहा हूँ।

+1

'सीमा-collapse' और' सीमा-spacing' केवल तालिका पंक्तियों को तालिकाओं के लिए लागू होते हैं। आपको उन्हें '.table' नियम पर ले जाना चाहिए। एनबी: कोई विशेष कारण है कि आप वास्तव में एक टेबल का उपयोग नहीं कर रहे हैं? – RoToRa

+0

एक HTML तालिका का उपयोग नहीं कर रहा है क्योंकि कोड साइट पर मौजूद है और कुछ AJAX के माध्यम से उत्पन्न होता है। मैंने इसे सरल रखा क्योंकि AJAX और php इस मुद्दे से असंबंधित नहीं है। – Mestore

+0

लेकिन निश्चित रूप से नेस्टेड divs और spans उत्पन्न करने के लिए trs और tds के साथ एक टेबल उत्पन्न करने के लिए कोई अलग नहीं है? यह कैसे है (और इन सीएसएस तालिका मुद्दों से निपटने) AJAX के माध्यम से सिर्फ एक टेबल आउटपुट से आसान है? – Simon

उत्तर

10

बस इसे एक 1px की तरह किसी भी छोटे चौड़ाई दे। टेबल कोशिकाएं हमेशा अपनी सामग्री को फिट करने के लिए सबसे छोटे संभव आकार तक फैली हुई हैं।

+0

यह पहले से ही कोशिश की जा चुकी है, यह चौड़ाई केवल सबसे लंबे शब्द के रूप में व्यापक बनाता है। यदि सेल में 3-5 शब्द हैं तो ब्राउज़र जितना संभव हो उतना संकीर्ण रखने के लिए जितना संभव हो सके उतना लपेट जाएगा। – Mestore

+1

व्हाइटस्पेस = "अब्रैप" –

+3

जोड़ने का प्रयास करें, फिर आपको रैपिंग रोकने के लिए 'व्हाइट-स्पेस: अब्रैप' भी जोड़ना होगा। – RoToRa

-1

आप अपने वर्ग के नाम "तालिका" कुछ अन्य को बदलना चाहिए। "टेबल" का सुझाव है कि यह div की तुलना में कुछ तालिका का वर्ग है।

निम्नलिखित

<div class='table'> 
<div> 
    <span style="width:30%">name</span> 
    <span>details</span> 
</div> 
</div> 
2

आप पहले वाले बच्चे का भी उपयोग कर सकता है तालिका में पहले div खोजने के लिए और इसके साथ एक अलग देने की कोशिश।

.table div:first-child 
{ 
    width:30%; 
} 
1

मुझे लगता है कि आपको लगता है कि यदि पंक्ति से अलग है कि यह पाठ का आकार होने के लिए प्राप्त कर सकते हैं पता नहीं है लेकिन आप एक चौड़ाई = "स्वचालित" या स्तंभों के लिए एक प्रतिशत चौड़ाई सेट करने का प्रयास कर सकते हैं।

11

प्रयास करें ->table-layout: fixed

+0

आप किंवदंती करते हैं। इसने उस मुद्दे को ठीक किया जिसमें मैं कंटेनरों से बाहर निकलने वाली कोशिकाओं के साथ था। –

+0

एक lifesaver! धन्यवाद! –

+0

आप इसे कहां डाल रहे हैं? – evolutionxbox

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