जवाबों:
वह कुछ और है:
div.inline { float:left; }
.clearBoth { clear:both; }
<div class="inline">1<br />2<br />3</div>
<div class="inline">1<br />2<br />3</div>
<div class="inline">1<br />2<br />3</div>
<br class="clearBoth" /><!-- you may or may not need this -->
एक इनलाइन div वेब की एक सनकी है और इसे तब तक पीटा जाना चाहिए जब तक कि यह एक स्पैन न बन जाए (10 में से कम से कम 9 बार) ...
<span>foo</span>
<span>bar</span>
<span>baz</span>
... मूल प्रश्न का उत्तर ...
इसे इस तरह लिखने की कोशिश करें:
div { border: 1px solid #CCC; }
<div style="display: inline">a</div>
<div style="display: inline">b</div>
<div style="display: inline">c</div>
इस सवाल और जवाबों को एक-दो बार पढ़ने के बाद, मैं बस इतना कर सकता हूं कि यह माना जाए कि संपादन का थोड़ा बहुत समय चल रहा है, और मेरा संदेह यह है कि आपको पर्याप्त जानकारी नहीं देने के आधार पर गलत उत्तर दिया गया है। मेरा सुराग br
टैग के उपयोग से आता है ।
दर्रील के लिए माफी। मैंने क्लास = "इनलाइन" को स्टाइल = "डिस्प्ले: इनलाइन" के रूप में पढ़ा। आपके पास सही उत्तर है, भले ही आप शब्दार्थ वर्ग के नाम का उपयोग करते हों ;-)
br
टेक्स्ट लेआउट के बजाय संरचनात्मक लेआउट प्रदान करने का मिस उपयोग मेरी पसंद के लिए बहुत अधिक प्रचलित है।
यदि आप इनलाइन तत्वों को इन के अंदर रखना चाहते हैं divs
तो आपको div
इनलाइन बनाने के बजाय उन एस को फ्लोट करना चाहिए ।
फ्लोट किए गए divs:
===== ======= == **** ***** ****** +++++ ++++
===== ==== ===== ******** ***** ** ++ +++++++
=== ======== === ******* **** ****
===== ==== ===== +++++++ ++
====== == ======
इनलाइन divs:
====== ==== ===== ===== == ==== *** ******* ***** *****
**** ++++ +++ ++ ++++ ++ +++++++ +++ ++++
यदि आप पूर्व के बाद हैं, तो यह आपका समाधान है और उन br
टैगों को खो दें:
<div style="float: left;" >
<p>block level content or <span>inline content</span>.</p>
<p>block level content or <span>inline content</span>.</p>
</div>
<div style="float: left;" >
<p>block level content or <span>inline content</span>.</p>
<p>block level content or <span>inline content</span>.</p>
</div>
<div style="float: left;" >
<p>block level content or <span>inline content</span>.</p>
<p>block level content or <span>inline content</span>.</p>
</div>
ध्यान दें कि इन विभाजनों की चौड़ाई तरल है, इसलिए यदि आप व्यवहार को नियंत्रित करना चाहते हैं तो उन पर चौड़ाई डालने के लिए स्वतंत्र महसूस करें।
धन्यवाद, स्टीव
आपको इनलाइन के सही तरीके के
<span>
बजाय उपयोग करना चाहिए । क्योंकि div एक ब्लॉक स्तर का तत्व है, और आपकी आवश्यकता इनलाइन-ब्लॉक स्तर के तत्वों के लिए है।<div>
आपकी आवश्यकताओं के अनुसार यहां HTML कोड है:
<div class="main-div">
<div>foo</div>
<div>bar</div>
<div>baz</div>`
</div>
display:inline-block;
float:left;
इसलिए आप प्रदर्शन संपत्ति को display:inline-block;
जबरदस्ती बदलना चाहते हैं
उदाहरण एक
div {
display: inline-block;
}
उदाहरण दो
div {
float: left;
}
आपको फ्लोट साफ़ करने की आवश्यकता है
.main-div:after {
content: "";
clear: both;
display: table;
}
जैसा कि उल्लेख किया गया है, प्रदर्शन: इनलाइन वह है जो आप चाहते हैं। कुछ ब्राउज़र इनलाइन-ब्लॉक का भी समर्थन करते हैं।
बस "फ्लोट: लेफ्ट" के साथ एक रैपर div का उपयोग करें और फ्लोट वाले बॉक्स को भी अंदर रखें: लेफ्ट:
सीएसएस:
wrapperline{
width: 300px;
float: left;
height: 60px;
background-color:#CCCCCC;}
.boxinside{
width: 50px;
float: left;
height: 50px;
margin: 5px;
background-color:#9C0;
float:left;}
HTML:
<div class="wrapperline">
<div class="boxinside">Box 1</div>
<div class="boxinside">Box 1</div>
<div class="boxinside">Box 1</div>
<div class="boxinside">Box 1</div>
<div class="boxinside">Box 1</div>
</div>
मैं स्पैन का उपयोग करता हूं या बायीं तरफ तैरता हूं। फ़्लोटिंग के साथ एकमात्र समस्या यह है कि आपको फ़्लोट को बाद में साफ़ करना होगा या युक्त div में ऑटो के लिए अतिप्रवाह शैली सेट होनी चाहिए
मैं जानता हूं कि लोग कहते हैं कि यह एक भयानक विचार है, लेकिन अगर आप टाइल छवियों की तरह कुछ करना चाहते हैं तो यह उपयोगी हो सकता है। उदाहरण के लिए, पिकासाव एक एल्बम में थंबनेल प्रदर्शित करने के लिए इसका उपयोग करता है।
उदाहरण के लिए देखें / डेमो http://clouble-library.googlecode.com/svn/trunk/closure/goog/demos/inline_block_quirks.html (वर्ग goog-inline-block; मैं इसे यहाँ ib के लिए संक्षिप्त करता हूं;
/* below is a set of hacks to make inline-block work right on divs in IE. */
html > body .ib { display:inline-block; }
.ib {display:inline-block;position:relative;}
* html .ib { display: inline; }
:first-child + html .ib { display:inline; }
यह देखते हुए कि सीएसएस, आपके डिव को वर्ग ib पर सेट करता है, और अब यह जादुई रूप से एक इनलाइन ब्लॉक तत्व है।
आपको तीन डिवीजनों को शामिल करने की आवश्यकता है। यहाँ एक उदाहरण है:
सीएसएस
div.contain
{
margin:3%;
border: none;
height: auto;
width: auto;
float: left;
}
div.contain div
{
display:inline;
width:200px;
height:300px;
padding: 15px;
margin: auto;
border:1px solid red;
background-color:#fffff7;
-moz-border-radius:25px; /* Firefox */
border-radius:25px;
}
नोट: सीमा-त्रिज्या विशेषताएँ वैकल्पिक हैं और केवल CSS3 अनुरूप ब्राउज़रों में काम करती हैं।
एचटीएमएल
<div class="contain">
<div>Foo</div>
</div>
<div class="contain">
<div>Bar</div>
</div>
<div class="contain">
<div>Baz</div>
</div>
ध्यान दें कि डिव 'फू' 'बार' और 'बाज' प्रत्येक 'डिव' डिव के भीतर हैं।
मुझे लगता है कि आप बिना किसी सीएसएस का उपयोग किए इस तरह से उपयोग कर सकते हैं -
<table>
<tr>
<td>foo</td>
</tr>
<tr>
<td>bar</td>
</tr>
<tr>
<td>baz</td>
</tr>
</table>
अभी आप ब्लॉक स्तर के तत्व का उपयोग कर रहे हैं जिस तरह से आपको अवांछित परिणाम मिल रहे हैं। तो आप इनलाइन एलिमेंट जैसे स्पैन, स्मॉल आदि को कर सकते हैं।
<span>foo</span><span>bar</span><span>baz</span>
<div class="cdiv">
<div class="inline"><p>para 1</p></div>
<div class="inline">
<p>para 1</p>
<span>para 2</span>
<h1>para 3</h1>
</div>
<div class="inline"><p>para 1</p></div>
<div>foo</div><div>bar</div><div>baz</div>
//solution 1
<style>
#div01, #div02, #div03 {
float:left;
width:2%;
}
</style>
<div id="div01">foo</div><div id="div02">bar</div><div id="div03">baz</div>
//solution 2
<style>
#div01, #div02, #div03 {
display:inline;
padding-left:5px;
}
</style>
<div id="div01">foo</div><div id="div02">bar</div><div id="div03">baz</div>
/* I think this would help but if you have any other thoughts just let me knw kk */