我正试图将我的DIV定位如下
徽标/菜单/社交
Intro-left / intro-right
backpicture
中东-1
左下角/右下角
问题在于目前DIV显示如下(参见JSFiddle http://jsfiddle.net/A4Sn8/1/):
徽标/菜单
社会
backpicture
Intro-left / intro-right
中东-1
左下
右下角
总之,我的“社交”DIV位于菜单下方而不是右侧。右下方DIV位于左下方而不是右下方,背面图像位于Intro-left和intro-right之前,而不是之后。
我该如何解决这个问题?
非常感谢
HTML
<div id="logo">Logo</div> <!-- End DIV Logo -->
<div id="mainmenu">
<ul>
<li>
<h5>Menu I</h5>
<ul>
<li><a title="" href="">Biography</a> </li>
<li><a title="" href="">Publications</a> </li>
</ul>
<li>
<h5>Menu 2</h5>
<ul>
<li><a title="" href="">Demo</a> </li>
<li><a title="" href="">Features</a> </li>
<li><a title="" href="">Comparison</a> </li>
</ul>
</li>
<li>
<h5>Menu 3</h5>
<ul>
<li><a title="" href="">Item 1</a> </li>
<li><a title="" href="">Item 2</a> </li>
<li><a title="" href="">Item 3</a> </li>
</ul>
</li>
<li>
<h5>Menu 4</h5>
<ul>
<li><a title="" href="">ddfd</a> </li>
<li><a title="" href="">dsfd</a> </li>
</ul>
</li>
</ul>
</div> <!-- End DIV Main Menu -->
<div id="social">Social</div>
<div id="intro-left"></div>
<div id="intro-right">
<div id="content-headline"><h1>Novitates autem si spem</h1></div> <!-- End DIV Content headline-->
<p>Novitates sit.</p>
</div>
<div id="backpicture">backpicture</div>
<div id="middle-1">Middle-1</div>
<div id="bottom-left">bottom-left</div>
<div id="bottom-right">bottom-right</div>
CSS:
@charset"UTF-8";
/* CSS Document */
Html, body {
margin: 0;
padding: 0;
height: 100%;
background: #fff;
font-family: 'Open Sans', sans-serif;
}
#logo {
position: absolute;
top: 35px;
left: 20px;
color: #000;
font-size: 20px;
}
/* mainmenu */
#mainmenu {
margin-top: 35px;
width: 100%;
padding-bottom: 10px;
overflow: hidden;
}
#mainmenu ul {
float: right;
margin: 0;
color: #000;
list-style: none;
}
#mainmenu ul li {
display: inline-block;
float: left;
width: 140px;
line-height: 20px;
}
#mainmenu>ul>li {
margin-left: 20px;
}
#mainmenu ul li a {
display: block;
text-decoration: none;
font-weight:600;
font-size: 12px;
}
#mainmenu ul li a, #mainmenu ul ul:hover li a {
color: #333;
-webkit-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-moz-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-ms-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-o-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-webkit-transition-duration: .4s, .4s, .4s, .4s;
-moz-transition-duration: .4s, .4s, .4s, .4s;
-ms-transition-duration: .4s, .4s, .4s, .4s;
-o-transition-duration: .4s, .4s, .4s, .4s;
transition-duration: .4s, .4s, .4s, .4s;
-webkit-transition-property: all, -webkit-transform;
-moz-transition-property: all, -moz-transform;
-ms-transition-property: all, -ms-transform;
-o-transition-property: all, -o-transform;
transition-property: all, transform;
}
#mainmenu ul ul li a:hover, #mainmenu ul ul li.current-menu-item a {
color: #005EBC;
-webkit-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-moz-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-ms-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-o-transition-timing-function: ease-out, ease-in, linear, ease-in-out;
transition-timing-function: ease-out, ease-in, linear, ease-in-out;
-webkit-transition-duration: .4s, .4s, .4s, .4s;
-moz-transition-duration: .4s, .4s, .4s, .4s;
-ms-transition-duration: .4s, .4s, .4s, .4s;
-o-transition-duration: .4s, .4s, .4s, .4s;
transition-duration: .4s, .4s, .4s, .4s;
-webkit-transition-property: all, -webkit-transform;
-moz-transition-property: all, -moz-transform;
-ms-transition-property: all, -ms-transform;
-o-transition-property: all, -o-transform;
transition-property: all, transform;
}
social {
right: 10px;
Color: blue;
}
p {
color: #333;
font-weight:300;
font-size: 13px;
}
h1 {
color: #00539E;
font-size: 30px;
}
#intro-left {
float: left;
width: 35%;
}
#intro-right {
float: right;
padding-right: 50px;
width: 60%;
}
#backpicture {
height:160px;
width: 100%;
background: blue;
}
#middle-1 {
width: 980px;
background: #c81919;
display: block;
margin-left: auto;
margin-right: auto;
}
#bottom-left {
float: left;
width: 35%;
background: #5421c2;
}
#bottom-right {
float: right;
padding-right: 50px;
width: 60%;
background: #2ec4a6;
}
答案 0 :(得分:1)
您正在将CSS规则与绝对像素大小和百分比混合。这并不总是一个好主意。
您可能遇到此问题,因为您的padding-right
50px大于剩余5%的可用空间。
我不确定你想要达到的目标,但我想底部元素应该在同一高度。试试这个:
#bottom-right {
float: right;
padding-right: 5%; /* you defined 50px instead! */
width: 60%;
background: #2ec4a6;
}
答案 1 :(得分:0)
对于主菜单和社交群体在一行:
#social {
float:right;
margin-top: 35px;
right: 10px;
color: blue;
}
#mainmenu {
float:left;
margin-top: 35px;
width: 80%;
padding-bottom: 10px;
overflow: hidden;
}
主要问题是width:100%
给#mainmenu
。这不允许social
块出现在右侧。此外,float:left
中的#mainmenu
和float:right
中的social
指定了诀窍。
还有一件事,css中的social
没有#
。