Сделал 100%, но возник вопрос

При работе с
.main menu

код

.main-menu {
    float: right;
    width: 110px;

}

работать наотрез отказался, т.е. блок уходил в право, но на верх не поднимался

пришлось добавлять строчку margin-top: -179px;

Вот из-за чего это может быть?

А покажите весь код, пожалуйста. Я думаю, что для блока “О нас” не задано свойство float: left;

Верно, не задано, если я его задаю, то все укатывается в не пойми какую дребедень.

.header {
    min-height: 40px;
    margin-bottom: 20px;
}

.logo {
    float: left;
    width: 230px;
    text-align: center;
    background-color: #333333;
    color: white;   
    font-weight: bold;
}

.contacts {
    float: right;
    width: 110px;
    text-align: center;
    background-color: #333333;
    color: white;
    font-style: italic;
}

.about-us {
    width: 230px;
    margin-bottom: 10px;  
   
}

.about-us h1 {font-size: 20px;    
}

.about-us p {
    font-size: 12px;
}
.main-menu {
    float: right;
    width: 110px;
    margin-top: -179px;       
}

.footer {background-color: #333333;  
margin-top: 20px;
color: white;
}

Просто получается у меня не совсем верное, но альтернативное решение.

Со словом “альтернативное” я могу согласиться. Но попробуйте представить, какой величины у вас будет этот отрицательный отступ, если на сайте, к примеру, это меню будет посередине страницы, а высота страницы в тысячах пикселей измеряется…
Первые два блока когда оформляли, float прописали каждому, следующие два лучше сделать так же. А футер ставится на место с помощью clear: both;

Т.е. float прописывается для каждого блока. Всегда?

“Всегда” - это слишком глобально. Если сетка строится на флоатах, то лучше к каждому это свойство применить, чем гигантские отступы( а тем более отрицательные) писать. Я об этом.

1 лайк