我的主要内容存在问题。随着屏幕调整大小或主要内容的文本变大,它会按预期向下扩展,但它也会在我左侧的菜单下面,这是我不想要的。
有人可以审核我的代码并告诉我如何解决这个问题吗?
图像:
<html>
<head>
<link type="text/css" rel="stylesheet" href="css/styles.css"/>
<link href='http://fonts.googleapis.com/css?family=Josefin+Slab:400,400italic' rel='stylesheet' type='text/css'>
<title>page title</title>
</head>
<body>
<div class="pagediv">
<div class="headermain">
Title
</div>
<div class="headerquote">
quote
</div>
<div class="menu">
<p><a href="link">Home</a></p>
<p><a href="link">About the Artist</a></p>
<p><a href="link>"Blog</a></p>
<p><a href="link">Artist Statement</a></p>
<p><a href="link">Inspiration</a></p>
<p><a href="link">Art Gallery</a></p>
<p><a href="link">Exhibits</a></p>
<p><a href="link">Store</a></p>
<p><a href="link">Commissioning</a></p>
<p><a href="link">Contact</a></p>
</div>
<div class="artist_pic">
<img src="picture link">
</div>
<div class="content_type_a">
<p>CONTENT HERE</p>
</div>
<div class="footer">
我的CSS如下:
body {
background-color: black;
}
/*contains the page in the center of the browser*/
.pagediv {
margin-left: auto;
margin-right: auto;
width: 70%;
background-color: black;
}
/*Main title bar at the top of the page*/
.headermain {
background-color: black;
font-family: 'Josefin Slab', serif;
color: #FFF;
font-size: 200%;
font-style: bold;
display: block;
width: 100%;
padding-top: 30px;
}
/*Quote after the main title*/
.headerquote {
background-color: black;
font-family: 'Josefin Slab', serif;
font-size: 110%;
font-style: italic;
color: #FFF;
padding-top: 5px;
padding-left: 60px;
padding-bottom: 5px;
display: block;
}
/*headerquote bottom border*/
.headerquote {
border-bottom: 2px solid white;
}
.menu {
background-color: black;
width: auto;
font-family: 'Josefin Slab', serif;
color: #FFF;
font-size: 110%;
font-style: bold;
text-align: right;
display: inline-block;
float: left;
clear: right;
clear: both;
padding-right: 15px;
height: px;
}
.menu a:link {
text-decoration: none;
color: #FFF;
font-size: 110%;
}
.menu a:hover {
color: #FFF;
font-size: 110%;
text-decoration:underline;
}
.menu a:visited {
text-decoration: none;
color: #FFF;
font-size: 110%;
}
.artist_pic {
display: inline-block;
width: auto;
clear: none;
position: relative;
float: left;
margin-left: 0px;
margin-top: 20px;
margin-right: 20px;
margin-bottom: 10px;
}
.content_type_a {
background-color: black;
font-family: Arial, serif;
font-size: 100%;
color: #FFF;
width: auto;
float: 40%;
clear: none;
display: block;
text-align:justify;
}
.construction {
background-color: black;
font-family: Arial, serif;
font-size: 100%;
color: #FFF;
display: block;
text-align:justify;
}
.construction img {
background-color: transparent;
height: 150px;
border: none;
width: auto;
font-family: Arial
color: #FFF;
font-size: 100%;
font-style: bold;
text-align: center;
padding: 20px 0px 0px 100px;
}
.footer {
}
答案 0 :(得分:0)
你可以删除
text-align:justify;
来自.content_type_a
样式并添加
position: absolute;
left: 220px;
答案 1 :(得分:0)
这个问题有现成的解决方案。它们被称为网格系统。
它们是为了缓解这个问题而发明的。
请参阅以下内容,例如:
他们有一个(非常)小的学习曲线,但我认为这是值得的。
答案 2 :(得分:0)
.menu {
float: left;
}
原因是,如果菜单不高于允许在其周围浮动的内容,那么当内容低于菜单时,它会有更多空间。
包装器和左边距:负值是解决方案之一,通常具有固定的菜单宽度。
<div id="wrapper">
<div class="menu">
<p><a href="link">Home</a></p>
<p><a href="link">About the Artist</a></p>
<p><a href="link>"Blog</a></p>
<p><a href="link">Artist Statement</a></p>
<p><a href="link">Inspiration</a></p>
<p><a href="link">Art Gallery</a></p>
<p><a href="link">Exhibits</a></p>
<p><a href="link">Store</a></p>
<p><a href="link">Commissioning</a></p>
<p><a href="link">Contact</a></p>
</div>
<div class="artist_pic">
<img src="picture link">
</div>
<div class="content_type_a">
<p>CONTENT HERE</p>
</div>
<div style="clear:both"><!-- note we should clear floats with some type of content or tag --></div>
</div> <!-- end wrapper -->
现在添加左边距
.wrapper {
left-margin:200px;
}
.menu {
left-margin:-200px;
width:200px;
}
现在内容不会包裹菜单,无论它是否浮动。
答案 3 :(得分:0)
您的浮动图像应位于菜单旁边的容器内。
要不允许将/ main容器放在浮动菜单下,只需使用overflow
触发布局。的 DEMO 强>
主容器的CSS变为:
.content_type_a {
background-color: black;
font-family: Arial, serif;
font-size: 100%;
color: #FFF;
width: auto;
overflow:hidden;/* here mind outside and inside floatting elements*/
clear: none;
display: block;
text-align:justify;
}
Float:40%;
不存在,只需:none
,right
或left
作为正确的值。