2015-02-20 10 views
12

के साथ शीर्ष नौसेना ओवरलैप मैं अपने लैंडिंग पृष्ठ को बूटस्ट्रैप से सेमेन्टिक-यूआई में परिवर्तित कर रहा हूं। पृष्ठ में शीर्ष शीर्ष नौसेना तय की गई है। मुख्य सामग्री दो स्तंभों में विभाजित है (3-कोल्स और 9-कोल्स)। बाएं कॉलम का उपयोग साइडबार दिखाने के लिए किया जाता है और वर्तमान सामग्री के लिए दायां कॉलम का उपयोग किया जाता है।मुख्य सामग्री

मैंने सेमेन्टिक-यूआई के डेमो पेज को कॉपी और पेस्ट करने का प्रयास किया। Navbar 45px उच्च है। मैंने देखा कि मुख्य सामग्री का पहला 45 पीएक्स ओवरलैप किया गया है।

<link href="//semantic-ui.com/dist/semantic.min.css" rel="stylesheet"/> 
 
<script src="//semantic-ui.com/dist/semantic.min.js"></script> 
 

 
<div id="navbar" class="ui fixed inverted main menu"> 
 
    <div class="container"> 
 
    <div class="title item"> 
 
     <b>Dashboard</b> 
 
    </div> 
 
    </div> 
 
</div> 
 

 
<div id="maincontent" class="ui bottom attached segment pushable"> 
 
    
 
    <div id="sidebar" class="ui visible left vertical sidebar menu"> 
 
    <a class="item">First Item</a> 
 
    <a class="item">Second Item</a> 
 
    <a class="item">Third Item</a> 
 
    <a class="item">Fourth Item</a> 
 
    <a class="item">Fifth Item</a> 
 
    </div> 
 
    
 
    <div id="content" class="pusher"> 
 
    <div class="ui basic segment"> 
 
     <h3 class="ui header">Application Content</h3> 
 
     <p>First paragraph...</p> 
 
     <p>Second paragraph...</p> 
 
     <p>Third paragraph...</p> 
 
    </div> 
 
    </div> 
 

 
</div>

मेरे वर्तमान workaround नेवबार के बाद एक 45px उच्च प्लेसहोल्डर जोड़ना है।

<div style="height:45px"></div> 

मुझे पूरा यकीन है कि कुछ अच्छे सीएसएस शैली के नाम सामग्री ओवरलैपिंग को ठीक कर सकते हैं।

+0

कोई 'आईडी =" कंटेनर "अपने कोड में' तत्व नहीं है तुम बस अपने मुख्य कंटेनर में एक गद्दी जोड़ने की जरूरत है। – phts

+0

यह बेहतर होगा यदि आप एक जेएसफिल्ड बनाते हैं जो आपको समस्या का परिचय देता है। – phts

+0

सोचा कि मैं गल्प बिल्ड का उपयोग कर किसी के लिए इंगित करता हूं, यदि आपके पास एक 'ग्रिड' तत्व के बाद एक निश्चित मेनू है, तो आप अपने मेनू में '@fixedPrecedingGridMargin' चर का उपयोग करके ग्रिड टॉप मार्जिन को कस्टमाइज़ कर सकते हैं। Variables फ़ाइल। – Kishan

उत्तर

5

समाधान बहुत सरल है:

+0

यह वास्तव में मेरा कोई ब्रेनर समाधान नहीं है। वास्तव में व्यावहारिक। – stanleyxu2005

+0

मैं इस पर एक शुरुआती हूं कि मेरे सरल प्रश्नों को क्षमा करें :) तो एकमात्र चीज जो हमें वास्तव में करना है वह है "और अपने सीएसएस में जोड़ें:", ठीक है? सिर्फ css को देखा (.ui # सामग्री इत्यादि ...) bootstrap.css फ़ाइल में?और दूसरा सवाल, क्या सीएसएस को bootstrap.css फ़ाइल के भीतर किसी भी विशेष स्थान में जोड़ा जाना चाहिए, या बस फ़ाइल के बहुत अंत में रखना चाहिए? – user2075599

+1

ओह - और, यह कहता है "पैडिंग हेडर ऊंचाई के समान होना चाहिए"। आप कैसे जानते हैं कि हेडर ऊंचाई क्या है? – user2075599

-1

आपकी navbar में fixed कक्षा है। इस वर्ग को तत्व से हटाएं और आपका मेनू किसी पृष्ठ पर ठीक नहीं किया जाएगा, इसलिए यह मुख्य सामग्री को ओवरलैप नहीं करेगा।

http://jsfiddle.net/abszsLno/

+1

मैं अभी भी नेविबार को ठीक करना चाहता हूं। जब सामग्री काफी लंबी होती है और मैं नीचे स्क्रॉल करता हूं, तो navbar वहां रहना चाहिए। – stanleyxu2005

1

क्या तुम कर सकते हो सामग्री div पर एक ऊंचाई सेट कर दिया जाता है और फिर अतिप्रवाह सेट: स्क्रॉल। इस तरह से कोई भी लंबी सामग्री div में स्क्रॉल करेगी और यह पृष्ठ को और एनएवी बार के नीचे नहीं ले जाएगी।

<link href="//semantic-ui.com/dist/semantic.min.css" rel="stylesheet"/> 
 
<script src="//semantic-ui.com/dist/semantic.min.js"></script> 
 

 
<div id="navbar" class="ui fixed inverted main menu"> 
 
<div class="container"> 
 
    <div class="title item"> 
 
     <b>Dashboard</b> 
 
    </div> 
 
    </div> 
 
</div> 
 
<div class="ui grid"> 
 
    <div class="row"> 
 
     <div class="column"> 
 
      <div id="maincontent" class="ui bottom attached segment pushable"> 
 
        <div id="sidebar" class="ui visible left vertical sidebar menu"> 
 
        <a class="item">First Item</a> 
 
        <a class="item">Second Item</a> 
 
        <a class="item">Third Item</a> 
 
        <a class="item">Fourth Item</a> 
 
        <a class="item">Fifth Item</a> 
 
        </div> 
 
        <div id="content" class="pusher"> 
 
        <div class="ui basic segment"> 
 
         <h3 class="ui header">Application Content</h3> 
 
         <p>First paragraph...</p> 
 
         <p>Second paragraph...</p> 
 
         <p>Third paragraph...</p> 
 
        </div> 
 
        </div> 
 
      </div> 
 
     </div> 
 
    </div> 
 
</div>

2

आप ग्रिड कक्षा में अपने पेज की सामग्री रैप करने के लिए किया है।

<div id="navbar" class="ui fixed inverted main menu"> 
<!-- header content here --> 
</div> 
<div id="content" class="ui container"> 
<!-- main content here --> 
</div> 

और अपने सीएसएस में जोड़ें::

.ui#content{ 
    // padding should be the same as header height 
    padding-top: 55px; 
} 
+0

यह एक समाधान के करीब हो रहा है, सिवाय इसके कि साइडबार की ऊंचाई ब्राउज़र विंडो में फिट नहीं हो सकती है। – stanleyxu2005

+0

आप साइडबार का उपयोग क्यों करना चाहते हैं? ऊर्ध्वाधर मेनू घटक लेने के लिए बेहतर नहीं है? जब आप पेज – niba

+0

में पुश करने योग्य सामग्री प्राप्त करना चाहते हैं तो साइडबार बेहतर होता है मैंने एक लंबवत मेनू की कोशिश की, लेकिन यह साइडबार के समान नहीं दिखता है। साइड बार के लिए एक छाया सही है। साइडबार का उपयोग करते समय मेनू आइटम के बीच डिवाइडर होंगे। – stanleyxu2005

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