CSS-заполнение внутри вложенного div

0

Я пытаюсь понять, почему в коробке у этого скрипача есть так много надписей над и под текстом.

http://jsfiddle.net/fZ6d7/1/

КОД

 <style>
    .simplebox {
        padding: 6px;
        background: #eee;
        border-radius: 8px;
        border: 1px solid #ddd;
        box-shadow: 0 1px 1px #fff inset, 0 -1px 0px #ccc inset;
    }
     .simplebox-content {
        box-shadow: 0 1px 1px #ddd inset;
        border: 1px solid #cccccc;
        border-radius: 5px;
        background: #fff;
        padding: 0 8px;
    }
    </style>


    <div class="simplebox" data-editurl="/TextualReporting/ShowProgressEditor?itemId=5d205a60-64de-4717-ac1d-9db00189db74" style="">
    <div class="simplebox-content">
    <p>This is a test. This text has too much padding above and below.</p>
    </div>
    </div>

Любое понимание?

Теги:

3 ответа

2
Лучший ответ

Ваша проблема - заполнение и маржа по умолчанию! Вы можете использовать этот базовый универсальный сброс, чтобы удалить всю пометку и маркер по умолчанию для всех ваших элементов html:

* { padding: 0; margin 0;}

Добавьте его в самую верхнюю часть таблицы стилей CSS, так что ничего не будет иметь прописку, если вы не укажете ее. Таким образом, ваш <p></p> (или любой другой) не будет иметь этого надоедливого значения по умолчанию.

Использование какой-либо формы сброса - это лучшая практическая задача. Заинтересованы в более сложных сбрасываниях? Проверьте normalize.css.

Пример в скрипте: http://jsfiddle.net/agconti/SLjV2/2/

2

Параграф <p> по умолчанию имеет маржу :-)

  • 0
    Я был первым; -d
0

Это связано <p> тегом <p> который имеет некоторый запас в качестве стандарта. Чтобы удалить его, просто добавьте

p {
    margin: 0px;
}

к вашему css... или, альтернативно, использовать другой тег.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню