2017-01-02 1 views
1

В настоящее время я работаю над сайтом, и я схожу с ума по поводу этого нижнего колонтитула, который не останется внизу страницы. Я уже проверял другие темы с той же проблемой, и ничто не помогло мне.Не могу установить нижний колонтитул в нижней части страницы

Когда я пытаюсь «относительный», нижний колонтитул проходит под «топ-боксом» (который является моим заголовком), и когда я пытаюсь «абсолютный», он идет посередине страницы.

<header> 
<div class="topbox"> 
<ul> 
<li><a class="active" href="#home">Home</a></li> 
<li><a href="#news">Services</a></li> 
<li><a href="#contact">Clients</a></li> 
    <li><a href="#contact">Contact</a></li> 
<li><a href="#about">About</a></li> 
</ul> 
</div> 
</header> 
<body> 
<div class="wrapper"> 
<div class="scrollbtn"><img src="Images/Scroll.png" style="width:40%"/>  
</div> 
<div class="bgbox"> 
<div class="box2"> 
<a> Lorem ipsum dolor sit amet, consectetur adipiscing elit... 
</a> 
</div> 
</div> 
<div id="footer">© 2017 "TEXT" All Rights Reserved</div> 
</div> 
</body> 

Так вот у нас есть TOPBOX, который является заголовок, обертка, scrollbtn (ПИК мыши, чтобы указать, нужно прокручивать), bgbox (фон контента), box2 (содержание), то «lorep Ipsum »- это контент и очень длинный, что позволяет прокручивать пользователя. Это моя проблема, нижний колонтитул находится внизу страницы, когда вы загружаете его и, таким образом, посередине, когда вы прокручиваете вниз.

Вот CSS:

body, html { 
width:100%; 
height:100%; 
background-color: #060b0f; 
padding:0%; 
background-image: url('../images/background3.jpg'); 
background-size:cover; 
background-repeat: no-repeat; 
background-attachment: fixed; 
} 
/* HEADER */ 
.topbox { 
margin:0%; 
position: fixed; 
top:0%; 
left: 0%; 
width:100%; 
z-index:999; 
text-align:center; 
overflow: hidden; 
padding:0%; 
font-family:Impact; 
font-size:20px; 
} 
.topbox ul { 
    list-style-type: none; 
    margin: 0%; 
padding: 0%; 
overflow: hidden; 
background-color: #459cfe;} 

.topbox li { 
display: inline; 
} 
    .topbox li a { 
display: inline; 
color: black; 
text-align: center; 
padding: 14px 16px; 
text-decoration: none; 
} 
.topbox li a:hover:not(.active) { 
    background-color: #397fcd; 
} 
.active { 
    background-color: #fff; 
} 
/*HEADER FIN*/ 
.scrollbtn { 
position: absolute; 
bottom : 0%; 
left: 49%; 
} 

.hot { 
color:#4080e1; 
} 
.box2 { 
margin-top:0px; 
margin-left:10%; 
width : 70%; 
opacity:1; 
color: black; 
overflow: hidden; 
text-align:center; 
z-index:4; 

background-color:transparent; 


} 
.box2 a{ 
opacity:1; 
    } 
.bgbox { 
margin-top:0px; 
margin-left:8%; 
padding: 5%; 
padding-left: 8%; 
width : 70%; 
position: absolute; 
top : 10%; 
left: 0%; 
    background-color: rgba(255,255,255,0.5);  
overflow: hidden; 
text-align:center; 
z-index:3; 


} 
.bgbox:hover { 
background-color: rgba(255,255,255,0.9); 
} 

#footer { 
font-size:20px; 
cursor:pointer; 
color: black; 
text-align: center; 
width:100%; 
position:relative; 
left:0px; 
bottom:0px; 
background-color: #459cfe; 
} 
.wrapper { 
height:100%; 
} 

Я пробовал так много разных вещей (изменение высоты тела, обертывание все, относительный, абсолютный, фиксированный, статическая, ...), что я не могу думать ничего другого. Мне нужна внешняя точка зрения.

+0

«Верхняя панель» должна находиться внутри тега тела. Я не говорю, что это исправление, но просто указывая на эту проблему или это опечатка –

+0

Нет, это не опечатка, но, похоже, это не проблема. –

ответ

0

Вы желая расположить футер по нижней части родительского элемента. Поэтому вы должны указать ему положение: абсолютное

Он найдет ближайшего родителя, который не является «статическим», чтобы поместить себя относительно. Так что в настоящее время он будет сидеть в нижней части «тела». Если вы хотите, чтобы он сидел в нижней части «.wrapper», дайте .wrapper позицию «relative»

EDIT: OK Я вижу проблему с «bgbox», выходящей за пределы «заголовка».

1. удалить все «ВЫСОТА 100%» - который устанавливает высоту таким же, как окно просмотра (видны)

2. Ваш «bgbox» в настоящее время позиционируется абсолют - так он выиграл» t «оттолкнуться» от другого контента, и он не будет толкать другой контент вниз по мере его увеличения. Я не уверен, что вы здесь намереваетесь. Вы хотите, чтобы «bgbox» был частью обычного содержимого страницы? В этом случае сделайте это положение: относительное. (Я думаю, вы не хотите, чтобы другой контент занимал то же место, что и bgbox, так как у вас есть текст. Ваш css и «bg» в названии заставляют меня думать, что вы, возможно, скопировали шаблон откуда-то, но неправильно поняли первоначальное намерение bgbox?)

Замечание: У вас есть HTML-код вне тега. Я думаю, вы запутались между «головой», которая представляет собой раздел HTML, описывающий страницу, и потенциально связанную с ресурсами, и «заголовок», который является просто DIV с семантической информацией, используемой, например, поисковые системы.

+0

Спасибо, Я попробую сразу же, но нет, я не путаюсь с «Голова», это просто, что я поместил его наружу по ошибке, и это сработало, поэтому я предпочел это так, как он выглядит чище для меня. –

+0

Я попробовал просто добавить «position: relative «для обертки и нижнего колонтитула просто исчезли» < –

+0

Обертка в положение: относительный был необязательным вторым шагом. Посмотрите мое первое предложение: установите нижний колонтитул в положение: абсолютное –

0

Прежде всего, ваш код не выходной правильный путь это правильный HTML код:

<body> 
<header> 
<div class="topbox"> 
<ul> 
<li><a class="active" href="#home">Home</a></li> 
<li><a href="#news">Services</a></li> 
<li><a href="#contact">Clients</a></li> 
    <li><a href="#contact">Contact</a></li> 
<li><a href="#about">About</a></li> 
</ul> 
</div> 
</header> 
<div class="wrapper"> 
<div class="scrollbtn"><img src="Images/Scroll.png" style="width:40%"/>  
</div> 
<div class="bgbox"> 
<div class="box2"> 
<a> Lorem ipsum dolor sit amet, consectetur adipiscing elit... 
</a> 
</div> 
</div> 
<div id="footer">© 2017 "TEXT" All Rights Reserved</div> 
</div> 
</body> 

header тег должен находиться внутри body тега

второй вещь я попробовал ваш код с позиции колонтитула: абсолютное ; и работает хорошо для меня

enter image description here

+0

Это работает для меня тоже до тех пор, пока контент (Lorem ipsum. ..) коротка, но если я делаю это дольше, нижний колонтитул остается посередине:/ –

+0

Я действительно этого не делаю, но поскольку это просто, вы можете использовать ответ @vadiser как источник и начиная с него –

1

Вот пример:

html { 
 
    height: 100%; 
 
} 
 

 
body { 
 
    position: relative; 
 
    min-height: 100%; 
 
} 
 

 
main { 
 
    padding-bottom: 30px; 
 
} 
 

 
footer { 
 
    position: absolute; 
 
    bottom: 0; 
 
    width: 100%; 
 
    height: 30px; 
 
}
<body> 
 
    <header> 
 
    header 
 
    </header> 
 
    <main> 
 
    main 
 
    </main> 
 
    <footer> 
 
    footer 
 
    </footer> 
 
</body>

0

Я не знаю, как помечать его к этому, но я хотел бы Эдвард D для нахождения ответа! Я сначала попробовал удалить все "высота: 100%;" который не сразу устранил проблему, но был явно ошибкой от меня, так как она сделала «.body» и «.html 100%« разрешение при этом делает все остальное »позиция: абсолютная; divs перемещаются в соответствии с ним. Но настоящая проблема заключалась в том, что Bgbox тоже был абсолютным. Как только я это сделал "позиция: relative;" #footer "позиционируется в соответствии с ним. Большое спасибо Эдвард Д и всем тем, кто пытался помочь!

+0

Вот как «принять» ответ, который был вам наиболее полезен, что будет дать репутацию ответчика, а также помочь людям, которые ищут похожие вопросы, чтобы найти то, что полезно: http://stackoverflow.com/help/someone-answers. Если вам все еще нужна помощь с полупрозрачным фоном размером, чтобы соответствовать полностью непрозрачному тексту, запустите новый вопрос, и мы поможем :) –

+0

Спасибо, мой полупрозрачный фон работает как шарм (смешная фраза, потому что я не верю в прелестях), но если мне понадобится помощь, я приду сюда! Отличный сайт и отличные люди. Вопрос ответил менее чем за 30 минут, и проблема решена через несколько часов. Ура! –

Смежные вопросы