сделать страницу без полосы прокрутки, но нижний колонтитул внизу с помощью css

Как скрыть полосы прокрутки? Полоса прокрутки появляется, даже если содержимое пусто, но я этого не хочу.

Вот мой HTML-код:

    <html>
    <head>
{# ... #}
{% block stylesheets %}
            <link href="{{ asset('bundles/gestionconferenceapplication/css/style.css') }}" type="text/css" rel="stylesheet" />
{% endblock %}
        </head>
        <body>

            <div id="body_wrapper">
                <div id="container">

                    <!-- Start of Page Header -->

                    <div id="page_header">
                        <h1><span>Photos Site</span></h1>
                    </div>

                    <!-- End of Page Header -->

                    <!-- Start of Navigational Menu -->

                    <div id="nav_menu">

                        <ul>
                            <li id="menu1"><a href="{{ path('_acceuil', {'name': 'khalil comme toujours'}) }}" ><span>Acceuil</span></a></li>
                            <li id="menu2"><a href="#"><span>About Me</span></a></li>
                            <li id="menu3"><a href="{{ path('_creerConference') }}" ><span>Nouvelle Conference</span></a></li>
                            <li id="menu4"><a href="#"><span>Portfolio</span></a></li>
                            <li id="menu5"><a href="#"><span>Contacts</span></a></li>
                            <li id="menu6"><a href="#"><span>Links</span></a></li>
                        </ul>

                        <div class="clearthis">&nbsp;</div>
                    </div>

                    <!-- End of Mavigational Menu -->

                    <div class="clearthis">&nbsp;</div>

                    <!-- Start of Welcome to my Site -->

                    <div id="welcome">

                        <div class="content_header">
                            <h2><span>Welcome to my Site</span></h2>
                        </div>

                        <div class="content">
            {% block content %}

                        {% endblock %}  

                            </div>

                            <div class="clearthis">&nbsp;</div>
                        </div>

                        <!-- End of Welcome to my Site -->

                    </div>
                </div>


                <!-- Start of Page Footer -->

                <div id="page_footer">
                    Web design by <a href="#">Free Website Templates</a>
                </div>

                <!-- End of Page Footer -->

            </body>
        </html>

И вот файл CSS:

    * {
    margin: 0px;
    padding: 0px;
}

body {
    padding: 80px 0px 0px;
    background: url('../images/background_top.gif') #c4b8a1 repeat-x;
    color: #695d47;
    font-family: verdana, arial, sans-serif;
    font-size: 12px;
    text-align: center;
}

a {
    color: #695d47;
    background-color: inherit;
    text-decoration: underline;
}

a:hover {
    color: #ab9c7e;
    background-color: inherit;
}
span {
    display: none;
}

img {
    border: none;
}

ul {
    list-style-type: none;
}

li {
    list-style-type: none;
}

p {
    margin: 0px 0px 15px;
    text-align: justify;
    line-height: 15px;
}

.clearthis {
    margin : 0px;
    height : 1px;
    clear : both;
    float : none;
    font-size : 1px;
    line-height : 0px;
    overflow : hidden;
    visibility: hidden;
}


#body_wrapper {
    padding: 5px 0px 10px;
    width: 100%;
    background-color: #fff;
    color: inherit;
    position : relative;
    min-height: 100%;
}

#container {
    margin: 0px auto;
    width: 758px;
    text-align: right;
    padding-bottom: 20px;
    position : relative;
    min-height: 100%;
}

#container .content_header {
    margin: 20px 0px 0px auto;
    width: 730px;
    height: 40px;
    background: url('../images/content_header_bg.gif') repeat-x 0% 0%;
}

#container .content {
    margin: 3px 150px 0px 28px;
    width: 580px;
    text-align: left;

}


/* Page Header */

#page_header {
    background: url('../images/header_leftborder.gif') #fff repeat-y 0% 0%;
    color: #6a604e;
    float: left;
}

#page_header h1 {
    width: 280px;
    height: 125px;
    overflow: hidden;
    background: url('../images/website_title.gif') no-repeat 50% 50%;
}


/* Navigational Menu */

#nav_menu {
    margin-left: 9px;
    padding-left: 19px;
    float: right;
    background: url('../images/header_leftborder.gif') #fff repeat-y 0% 0%;
    color: #b3a386;
    text-align: center;
    font-family: tahoma, arial, sans-serif;
}

#nav_menu a {
    color: #b3a386;
    background: inherit;
}

#mav_menu a:hover {
    color: #857860;
    background: inherit;
}

#nav_menu ul {
    width: 450px;
    height: 125px;
    overflow: hidden;
}

#nav_menu li {
    float: left;
    border-width: 0px 1px 1px 0px;
    border-color: #c1b7a5;
    border-style: solid;
    font-size: 20px;
}

#nav_menu li#menu3, #nav_menu li#menu6 {
    border-right: none;
}

#nav_menu li a {
    display: block;
    width: 149px;
    height: 62px;
    text-decoration: none;
}

#nav_menu li a:hover {
    color: #857860;
    background-color: #f4eee2
}

#nav_menu li a span {
    padding-top: 17px;
    display: block;
}


/* Welcome to my Site */

#welcome .content_header h2 {
    height: 28px;
    background: url('../images/welcome_header.gif') no-repeat 0% 0%;
}

#welcome p {
    width: 420px;
    float: right;
}


/* Page Footer */

#page_footer {
    padding: 9px 10px 6px;
    font-weight: bold;
    float: none;
    clear: both;
    height:40px;



}

#page_footer a:hover {
    background-color: inherit;
    color: #4f4635;
}

Чего я хочу добиться, так это того, что когда у меня недостаточно контента, полосы прокрутки должны скрываться, а нижний колонтитул страницы остается видимым (в нижней части страницы (т.е. в нижней части браузера)) без перемещения полосы прокрутки. Я протестировал несколько стилей, таких как: position absolute и position:relative в #page_footer и #body_wrapper, но это не работает.


Я добавил DOCTYPE, и проблема решена, но появилась другая проблема: нижний колонтитул занимает большое место: введите здесь описание изображения

даже если я зафиксировал ширину (ширина: 40 пикселей)

у тебя есть идеи


person user201892    schedule 02.12.2012    source источник
comment
Вы хотите скрыть полосы прокрутки. В этом проблема?   -  person Naeem Ul Wahhab    schedule 02.12.2012
comment
Я хочу, чтобы, когда у меня недостаточно контента, полоса прокрутки не отображалась, а нижний колонтитул страницы отображался (в нижней части страницы) без перемещения полосы прокрутки.   -  person user201892    schedule 03.12.2012
comment
Какой браузер вы используете. Я проверил код в Firefox и Opera. При просмотре в этих браузерах на вашей странице уже нет полос прокрутки.   -  person Naeem Ul Wahhab    schedule 03.12.2012
comment
Проверьте редактирование моего ответа на проблему с нижним колонтитулом. Если это поможет, пожалуйста, нажмите на галочку, чтобы принять ответ   -  person Naeem Ul Wahhab    schedule 03.12.2012
comment
Я рад, что это помогло вам :-) пожалуйста, отметьте / примите мой ответ. Если вы примете полезные ответы, я и другие всегда будут готовы вам помочь   -  person Naeem Ul Wahhab    schedule 04.12.2012


Ответы (2)


Автоматическое скрытие полос прокрутки

Концепция:-

Вы можете использовать CSS overflow property, чтобы скрыть полосы прокрутки. Если вы примените overflow:hidden к любому компоненту веб-страницы или ко всей странице, полосы прокрутки будут навсегда скрыты.

Посмотрите на этот пример, где в текстовой области видны полосы прокрутки.http://jsfiddle.net/qtAqq/1/< /а>

Теперь, чтобы скрыть эти полосы прокрутки, мы применим overflow:hidden к этой текстовой области. Как видите, текст больше, чем текстовая область, но полосы прокрутки скрыты.http://jsfiddle.net/hnyVc/1/.

Но мы не хотим этого делать, поскольку полосы прокрутки полезны, когда на сайте есть контент, превышающий размер экрана. Поэтому мы будем использовать overflow:auto. См. этот пример http://jsfiddle.net/EZr89/.

Решение вашей проблемы:-

Как вы можете видеть, использование overflow:auto скрывает полосы прокрутки, когда на странице меньше контента, и делает полосы прокрутки видимыми, когда на странице больше контента, чем размер экрана. Поэтому просто добавьте следующий код в стили css своей страницы, чтобы вы могли автоматически скрывать полосы прокрутки, когда на странице меньше контента:

 html
{
overflow:auto;
}


Фиксация нижнего колонтитула в нижней части браузера Вы можете использовать postion:fixed; и bottom:0px; в нижнем колонтитуле страницы, чтобы зафиксировать его в нижней части браузера. Добавьте этот код в стили css своей страницы: -

#page_footer {
padding: 9px 10px 6px;
font-weight: bold;
float: none;
clear: both;
width:100%;
height:40px;
background: url('../images/background_top.gif') #c4b8a1 repeat-x;
    /*Add this Code to fix the footer at browser bottom*/
position:fixed;
bottom:0px;

    }

Другие проблемы/проблемы в вашем коде 1)Добавьте на свою страницу html поверх всего кода. 2) Вы покрасили все тело в более темный цвет, из-за чего нижний колонтитул выглядит большим. Это можно решить, установив цвет тела на белый и добавив элемент заголовка с более темным цветом после элемента контейнера. 3) Вы установили ограниченную ширину для контейнера div, из-за чего заголовок выглядит меньше в центре страницы. Это можно исправить, задав контейнеру div ширину 100% и поместив внутренний контейнер div с ограниченной шириной для выравнивания по центру страницы. Проверьте код с этими проблемами, исправленными здесь: -

найдите основные стили html и css в zip-файле здесь: http://www.keepandshare.com/doc/5182191/yoursite-zip-2k?da=y

Дайте мне знать, если это поможет

person Naeem Ul Wahhab    schedule 03.12.2012
comment
Я проверил ваше предложение, но оно вызвало у меня еще одну проблему, например, текст нижнего колонтитула не остается на своем месте .... - person user201892; 03.12.2012
comment
эти ссылки не работают,На этой странице в Интернете присутствует набор перенаправлений. - person user201892; 04.12.2012
comment
@ user201892 О, извините, это из-за документов Google. Я изменил ссылку Теперь она должна работать - person Naeem Ul Wahhab; 04.12.2012
comment
@user201892 user201892 Мне потребовалось несколько часов, чтобы исправить ваши проблемы. Пожалуйста, не будь таким эгоистичным. Если вы примете ответы, это также повысит вашу репутацию. Вот как вы можете принимать ответы: meta.stackexchange.com/questions/5234/ - person Naeem Ul Wahhab; 07.12.2012

добавьте этот стиль к своему телу

body{
    margin:0px;
    padding:0px;
    overflow:hidden;
}
person Community    schedule 15.10.2018