2017-05-30 133 views
1

我決定今天開始一個新的個人項目,這是一個論壇類型的東西(僅供練習)。 我設置了基本佈局並編寫了一些PHP函數,但是當我添加一個新帖子時,側邊欄向下移動並位於帖子下方。側邊欄移動到底部

這裏的一些圖片:

sidebar with only one post :)

sidebar with more than one post :(

的sidebar.php

<div class ="sidebar"> 

<div class = "col-lg-3 profile-tab sidebar-nav"> 

    <img src="images/dummy-pic.png" alt = ""><br> 
     <a href = "#">USERNAME</a><br> 
     <span>Post count: x</span><br> 
     <span>Likes: x</span> 


</div> 

<div class="col-lg-3"> 
    <ul class="sidebar-nav"> 
     <h4 class = "sb-heading">Post Categories</h4> 
      <li><a href="#">Category Name</a> 
      </li> 
      <li><a href="#">Category Name</a> 
      </li> 
      <li><a href="#">Category Name</a> 
      </li> 
      <li><a href="#">Category Name</a> 
      </li> 
      </ul> 
</div> 

<div class = "col-lg-3"> 
    <ul class="sidebar-nav"> 
     <h4 class = "sb-heading">Announcements</h4> 

      <li>interesting stuff</li> 
      <li>interesting stuff</li> 
      <li>interesting stuff</li> 
    </ul> 
</div> 

Posts.php

<div class = "post col-lg-8"> 

<h2 class = "page-header"><?php echo $post_title; ?></h2> 
<p class = "lead">By 
<a href = "#"><?php echo $post_author ?></a></p> 
<span class = "glyphicon glyphicon-time"><?php echo $post_date ?></span> 

<img class = "img-responsive" src = "<?php echo $post_image; ?>" /> 
<br> 
<p>  
<?php 
echo $post_content; 
?> 

</p> 

<br/> 
<a class = "btn btn-primary" href = "#">READ MORE</a> 

</div> 

<?php } ?> 

有關CSS

.sidebar-nav{ 
background-color: #ffffff; 
margin-top: 15px; 
border:2px solid #1b76bc; 
border-radius: 10px; 
padding: 20px 0 20px 0; 
text-align: center; 


} 

div.post.col-lg-8{ 

margin-left: 20px; 
} 

.sidebar-nav li{ 

    list-style: none; 
} 

.post{ 

padding:15px; 
margin-top: 15px; 
background-color: #ffffff; 
border-radius: 10px; 
border: 2px solid #1b76bc; 
padding: 20px; 

} 

我用COL-LG-3而不是4的側邊欄,這樣我可以添加一個左邊距的帖子。有可能是更好的方法,但只是一個擡頭

如果你需要的css文件讓我知道。

我真的很感激它!

+0

CSS將是有益的。你有圍繞Sidebar.php的包裝嗎? – Gerard

+0

添加了CSS。我有一個名爲'側邊欄'的包裝,它沒有顯示在帖子中,但我修復了它:) – Sam

+0

我認爲你應該可以添加:.sidebar {float:right;} – Gerard

回答

0

請在下面找到工作的例子。小提琴here

.sidebar { 
 
    float: right; 
 
    width: 25%; 
 
    max-width: 25%; 
 
} 
 

 
div.post.col-lg-8 { 
 
    float: left; 
 
    width: 70%; 
 
    max-width: 70%; 
 
} 
 

 
.sidebar-nav { 
 
    background-color: #ffffff; 
 
    margin-top: 15px; 
 
    border: 2px solid #1b76bc; 
 
    border-radius: 10px; 
 
    padding: 20px 0 20px 0; 
 
    text-align: center; 
 
} 
 

 
div.post.col-lg-8 { 
 
    margin-left: 20px; 
 
} 
 

 
.sidebar-nav li { 
 
    list-style: none; 
 
} 
 

 
.post { 
 
    padding: 15px; 
 
    margin-top: 15px; 
 
    background-color: #ffffff; 
 
    border-radius: 10px; 
 
    border: 2px solid #1b76bc; 
 
    padding: 20px; 
 
}
<div class="sidebar"> 
 

 
    <div class="col-lg-3 profile-tab sidebar-nav"> 
 

 
    <img src="images/dummy-pic.png" alt=""> 
 
    <br> 
 
    <a href="#">USERNAME</a> 
 
    <br> 
 
    <span>Post count: x</span> 
 
    <br> 
 
    <span>Likes: x</span> 
 

 

 
    </div> 
 

 
    <div class="col-lg-3"> 
 
    <ul class="sidebar-nav"> 
 
     <h4 class="sb-heading">Post Categories</h4> 
 
     <li><a href="#">Category Name</a> 
 
     </li> 
 
     <li><a href="#">Category Name</a> 
 
     </li> 
 
     <li><a href="#">Category Name</a> 
 
     </li> 
 
     <li><a href="#">Category Name</a> 
 
     </li> 
 
    </ul> 
 
    </div> 
 

 
    <div class="col-lg-3"> 
 
    <ul class="sidebar-nav"> 
 
     <h4 class="sb-heading">Announcements</h4> 
 

 
     <li>interesting stuff</li> 
 
     <li>interesting stuff</li> 
 
     <li>interesting stuff</li> 
 
    </ul> 
 
    </div> 
 
</div> 
 
<div class="post col-lg-8"> 
 

 
    <h2 class="page-header">Post title</h2> 
 
    <p class="lead">By 
 
    <a href="#"> 
 
     Post author 
 
    </a> 
 
    </p> 
 
    <span class="glyphicon glyphicon-time">May 30, 2017</span> 
 

 
    <img class="img-responsive" src="http://placehold.it/100" /> 
 
    <br> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p> 
 

 
    <br/> 
 
    <a class="btn btn-primary" href="#">READ MORE</a> 
 

 
</div> 
 
<div class="post col-lg-8"> 
 

 
    <h2 class="page-header">Post title</h2> 
 
    <p class="lead">By 
 
    <a href="#"> 
 
     Post author 
 
    </a> 
 
    </p> 
 
    <span class="glyphicon glyphicon-time">May 30, 2017</span> 
 

 
    <img class="img-responsive" src="http://placehold.it/100" /> 
 
    <br> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p> 
 

 
    <br/> 
 
    <a class="btn btn-primary" href="#">READ MORE</a> 
 

 
</div>

+0

謝謝!我又看了一眼,發現在'col-lg-3'的bootstrap框架內有一些媒體查詢,這使得它們變得非常小。我只是將每個側欄塊的寬度更改爲'width:auto!important;'並且它工作正常!我很感謝你的時間 – Sam

+0

對不起,你解決了原來的問題!我的想法是想知道...我偶然發現了另一個問題(上面的那個),並忘記了我的老問題:-)) – Sam

+0

很高興它的固定:) – Gerard

1

您必須在Posts.php中關閉div。

編輯:您可以嘗試類似下面:

的sidebar.php

<div class ="col-lg-3 col-md-3 col-sm-3 sidebar"> 

<div class = "profile-tab sidebar-nav"> 

    <img src="images/dummy-pic.png" alt = ""><br> 
     <a href = "#">USERNAME</a><br> 
     <span>Post count: x</span><br> 
     <span>Likes: x</span> 


</div> 

<div> 
    <ul class="sidebar-nav"> 
     <h4 class = "sb-heading">Post Categories</h4> 
      <li><a href="#">Category Name</a> 
      </li> 
      <li><a href="#">Category Name</a> 
      </li> 
      <li><a href="#">Category Name</a> 
      </li> 
      <li><a href="#">Category Name</a> 
      </li> 
      </ul> 
</div> 

<div> 
    <ul class="sidebar-nav"> 
     <h4 class = "sb-heading">Announcements</h4> 

      <li>interesting stuff</li> 
      <li>interesting stuff</li> 
      <li>interesting stuff</li> 
    </ul> 
</div> 
</div> 

Posts.php

<div class = "col-lg-8 col-md-8 col-sm-8"> //New line 
// php foreach etc. 
<div class = "post"> 

<h2 class = "page-header"><?php echo $post_title; ?></h2> 
<p class = "lead">By 
<a href = "#"><?php echo $post_author ?></a></p> 
<span class = "glyphicon glyphicon-time"><?php echo $post_date ?></span> 

<img class = "img-responsive" src = "<?php echo $post_image; ?>" /> 
<br> 
<p>  
<?php 
echo $post_content; 
?> 

</p> 

<br/> 
<a class = "btn btn-primary" href = "#">READ MORE</a> 

</div> 

<?php } ?> 
+0

對不起,我沒有縮進最後幾行。該div已關閉。我更新了代碼 – Sam

+0

,您必須將其作爲評論發佈:-) – hassan

+0

您可以試試這個嗎? –