我正在尝试用html和css来建立网站,我遇到了以下问题。我尝试使用网格布局,但是这两列不能相邻放置。我试过使用一些教程,但它们似乎不起作用,而且由于我对此还是个新手,我真的不知道我做错了什么。
这是我的html文件
<body>
<div class="page-wrap">
<header id="top" class="top">
<div class="topbar">
<h1>Jurrian Kole</h1>
</div>
<div class="secondbar">
<nav class="main-nav">
<a href="#">Home</a>
<a href="#">Portfolio</a>
<a href="#">Contact</a>
<a href="#">Work</a>
<a href="#">Examples</a>
</nav>
</div>
</header>
<div class="content-wrap">
<header class="article-header">
<h1 class="article-header-h1">
Hello and welcome to my website!
</h1>
<p class="article-header-p">
Published by Jurrian Kole, thursday, August 15th 2015
</p>
</header>
<div class="blog-post">
<div class="article-content" id="grid-2-3">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perferendis, modi. Expedita natus asperiores repellat, hic deserunt repudiandae dolore et quam nulla. Magnam dolor magni delectus reprehenderit quasi facere ipsam iusto.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti similique at maxime, architecto provident cupiditate, iusto iste consectetur est ab illo nemo illum, modi quis aspernatur eos eaque soluta. Officiis.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Optio non repellendus ut accusantium eveniet dolor sit corporis veniam alias soluta voluptas explicabo consequatur sed, nesciunt. Id libero eveniet obcaecati adipisci.</p>
<h3>I'm a h3</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Magni autem fugiat, aliquid a aut! Labore in doloremque laudantium delectus dolorum recusandae, quidem, asperiores molestiae repellendus molestias facere veritatis sequi hic.</p>
<h3>I'm a h3 as well</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ullam temporibus necessitatibus architecto ipsa quo aspernatur autem vitae, ad non quasi perspiciatis maxime recusandae eum, possimus dolorem soluta, modi omnis quis?</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Optio distinctio, vitae, unde possimus iste non libero. Tenetur in dolores expedita accusamus placeat sit ut vel, recusandae libero iste, perferendis perspiciatis!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Repellendus autem ratione illo sint vel suscipit magni, quis quibusdam voluptatibus quod aspernatur, nihil laborum dicta, soluta rerum fugit, placeat animi obcaecati!</p>
</div>
</div>
<div class="second-content">
<div class="sidepane" id="grid-1-3">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nihil molestiae, laboriosam nulla harum natus rem, nisi est distinctio quas, nemo commodi blanditiis consectetur perspiciatis voluptatibus pariatur, consequuntur dolore. Perferendis, cumque.</p>
</div>
</div>
</div>
</div>
这是我的css文件
a {
text-decoration: none;
}
body {
background: #222;
margin: 0;
padding: 0;
}
.page-wrap {
width: 1280px;
margin: auto;
font-family: sans-serif;
}
.top .topbar h1 {
margin-left: 45px;
color: white;
}
.top .secondbar {
background: #333;
}
.top .secondbar .main-nav a {
display: inline-block;
margin: 5px;
position: relative;
padding: 9px;
color: white;
}
.page-wrap .content-wrap {
background: #EEE;
margin-top: -22px;
}
.article-header-h1 {
padding-top: 10px;
text-align: center;
}
.article-header-p {
font-family: monospace;
font-size: 15px;
text-align: center;
}
#grid-2-3 {
background: white;
float: left;
width: 700px;
}
#grid-2-3 p, h3 {
padding: 15px;
}
#grid-1-3 {
background: white;
float: right;
width: 3300x;
}
#grid-1-3 p, h3 {
padding: 15px;
}如果可能的话,你能不能也贴出你是如何发现问题的?有没有办法可以改进我目前所拥有的代码呢?
提前感谢!
发布于 2015-01-16 02:59:45
对column类尝试如下所示:
.rightCol
{
width: 50%;
float: right;
height: 30px;
}
.leftCol
{
width: 50%;
float: left;
height: 30px;
text-indent: 10px;
}浮动是这里的关键。根据需要调整宽度和高度。确保父元素具有合适的宽度来容纳列。
发布于 2015-01-16 21:34:15
我可以看到你的css中有一个拼写错误:
#grid-1-3 {
background: white;
float: right;
width: 3300x;
}那里的宽度是3300x而不是330px
发布于 2015-01-16 03:16:38
基于JSFiddle的解决方案
代码中的问题有两个部分:
box-sizing属性来解决此问题。box-sizing告诉css是否在任何元素的固定宽度中包含填充或同时包含填充和边框。要使宽度包括填充,您可以添加box-sizing: padding-box,而要使宽度包括填充和边框,您可以添加box-sizing: border-box在您的情况下,您有一个3列网格,并希望左侧的方框为页面的2/3。所以你会有:#grid-2-3{ /* Other Attributes Here */ width: 66.6667% // I tend to go to four decimal places if possible. box-sizing: padding-box; }#grid-1-3{ /* Other Attributes Here */ width: 33.3333% // I tend to go to four decimal places if possible. box-sizing: padding-box; }
grid-1-3位于错误的元素上。它应该位于类为second-content.的元素上
我的最终代码是:
HTML
<div class="page-wrap">
<header id="top" class="top">
<div class="topbar">
<h1>Jurrian Kole</h1>
</div>
<div class="secondbar">
<nav class="main-nav">
<a href="#">Home</a>
<a href="#">Portfolio</a>
<a href="#">Contact</a>
<a href="#">Work</a>
<a href="#">Examples</a>
</nav>
</div>
</header>
<div class="content-wrap">
<header class="article-header">
<h1 class="article-header-h1">
Hello and welcome to my website!
</h1>
<p class="article-header-p">
Published by Jurrian Kole, thursday, August 15th 2015
</p>
</header>
<div class="blog-post">
<div class="article-content" id="grid-2-3">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perferendis, modi. Expedita natus asperiores repellat, hic deserunt repudiandae dolore et quam nulla. Magnam dolor magni delectus reprehenderit quasi facere ipsam iusto.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti similique at maxime, architecto provident cupiditate, iusto iste consectetur est ab illo nemo illum, modi quis aspernatur eos eaque soluta. Officiis.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Optio non repellendus ut accusantium eveniet dolor sit corporis veniam alias soluta voluptas explicabo consequatur sed, nesciunt. Id libero eveniet obcaecati adipisci.</p>
<h3>I'm a h3</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Magni autem fugiat, aliquid a aut! Labore in doloremque laudantium delectus dolorum recusandae, quidem, asperiores molestiae repellendus molestias facere veritatis sequi hic.</p>
<h3>I'm a h3 as well</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ullam temporibus necessitatibus architecto ipsa quo aspernatur autem vitae, ad non quasi perspiciatis maxime recusandae eum, possimus dolorem soluta, modi omnis quis?</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Optio distinctio, vitae, unde possimus iste non libero. Tenetur in dolores expedita accusamus placeat sit ut vel, recusandae libero iste, perferendis perspiciatis!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Repellendus autem ratione illo sint vel suscipit magni, quis quibusdam voluptatibus quod aspernatur, nihil laborum dicta, soluta rerum fugit, placeat animi obcaecati!</p>
</div>
</div>
<div class="second-content" id="grid-1-3">
<div class="sidepane">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nihil molestiae, laboriosam nulla harum natus rem, nisi est distinctio quas, nemo commodi blanditiis consectetur perspiciatis voluptatibus pariatur, consequuntur dolore. Perferendis, cumque.</p>
</div>
</div>
</div>
</div>CSS:
a {
text-decoration: none;
}
body {
background: #222;
margin: 0;
padding: 0;
}
.page-wrap {
width: 1280px;
margin: auto;
font-family: sans-serif;
}
.top .topbar h1 {
margin-left: 45px;
color: white;
}
.top .secondbar {
background: #333;
}
.top .secondbar .main-nav a {
display: inline-block;
margin: 5px;
position: relative;
padding: 9px;
color: white;
}
.page-wrap .content-wrap {
background: #EEE;
margin-top: -22px;
}
.article-header-h1 {
padding-top: 10px;
text-align: center;
}
.article-header-p {
font-family: monospace;
font-size: 15px;
text-align: center;
}
#grid-2-3 {
background: white;
float: left;
width: 66.6667%;
box-sizing: padding-box;
}
#grid-2-3 p, h3 {
padding: 15px;
}
#grid-1-3 {
background: white;
float: right;
width: 33.3333%;
box-sizing: padding-box;
}
#grid-1-3 p, h3 {
padding: 15px;
}https://stackoverflow.com/questions/27970902
复制相似问题