Убрать отступы картинок css

Как убрать лишние отступы у img внутри блока?

Довольно часто верстальщики сталкиваются с проблемами размещения элементов на странице из-за присутствия лишних отступов при определенных ситуациях. В статье будет рассмотрен случай, когда картинку размещают внутри блока, в результате чего появляются неизвестный отступ. Здесь вы найдете объяснение и решение этой проблемы.

Как убрать лишние отступы у img внутри блока?

Как и в обычной жизни, в верстке бывают аномальные ситуации, которые сложно объяснить. Именно такая ситуация может возникнуть, когда тег для вставки изображений (img) вставляется в контейнер, который обладает свойствами блочного элемента или плавающего объекта. Конфуз этой ситуации заключается в непонятном отступе, появляющемся ниже изображения.

Рассмотрим практический пример

Итак, для наглядности и лучшего восприятия проблемы предлагаю все посмотреть и, так сказать, «пощупать» на практике. Берем любое изображение и одеваем его в div. Ниже вы видите пример кода:

div> img src="img.png" width="250px" alt=""/> div>

При оформлении стилей зальем внутренний фон блока красным цветом. При нормальных условиях картинка полностью займет все место внутри блока и перекроет красный фон. Прописываем код для оформления

div  display:block; width:250px; margin:0px auto;/*Центруем блок*/ background:#ff0000;/*Зальем блок красным цветом, чтобы визуализировать отступ*/ > body  background:#eee; >

В результате чего браузер нам покажет следующую картину

Внешний вид отступа картинки внутри блока

Судя по красной полосе в нижней части контейнера можно констатировать, что непонятный отступ имеет место. Воспользовавшись панелью веб-мастера в браузере, стало известно, что отступ составил 5,511 пикселей.

Очень забавляет тот факт, что во всех популярных браузерах этот баг присутствует, а вот всеми любимый Internet Explowerd в этом случае отрабатывает безупречно.

Причина появления отступа

Как человек с высшим техническим образованием смею Вас заверить, что ничего не происходит просто так, у всего есть причины. Разобравшись в этом вопросе я еще раз в этом убедился. Весь конфуз заключается в стандартных свойствах элементов. По умолчанию тег img имеет свойства строчного элемента, что в свою очередь означает, что элемент будет выравниваться по базовой линии текста. Эта линия располагается чуть выше нижнего края блока, так как для текста существует обязательный запас- место под «хвосты» букв.

Решение проблемы

Для исправления этого мелкого недочета достаточно присвоить изображению свойства блочного элемента. С этим нам поможет свойство display, прописываем картинке display: block; и избавляемся от ненужных проблем. Также можно подключить вертикальное выравнивание через свойство vertical-align. Это тоже поможет избавиться от нежелательного отступа.

В каких браузерах работает?

Источник

Как убрать отступ у картинки?

1bf2f0bc57ea4105a96d5765059d55fb.png

Господа) помогите разобраться, что у меня за полоска справа от 1 и 3 картинки, как убрать?

Сначала думал, что картинка недостаточно узкая, но сделал шире и ниже, но полоска остаётся. В средствах разработчика в браузере не навести на эту полоску, чтобы посмотреть блок. Вот страница
вот html:

Наши услуги
секция художественной гимнастики спб

Групповые тренировки

Занятия в группах не более 8 человек 2 раза в неделю по 1 часу

Подробнее
Подробнее и запись

img18

Индивидуальные занятия

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

Подробнее
Подробнее и запись

составление программы выступления на соревнованиях

Составление выступлений

Составление уникальных упражнений для выступления на соревнованиях по художественной гимнастике

Подробнее
Подробнее и запись

Отзывы
.grid < position: relative; clear: both; margin: 0 auto; padding: 1em 0 4em; width: 96%; list-style: none; text-align: center; height: 400px; >/* Common style */ .grid figure < position: relative; float: left; overflow: hidden; margin: 10px 1%; width: 100%; height: auto; background: #3085a3; text-align: center; cursor: pointer; >.grid figure img < position: relative; display: block; min-height: 100%; max-width: 100%; opacity: 0.8; >.grid figure figcaption < padding: 2em; color: #fff; text-transform: uppercase; font-size: 1.25em; -webkit-backface-visibility: hidden; backface-visibility: hidden; >.grid figure figcaption::before, .grid figure figcaption::after < pointer-events: none; >.grid figure figcaption, .grid figure figcaption > a < position: absolute; top: 0; left: 0; width: 100%; height: 100%; >/* Anchor will cover the whole item by default */ /* For some effects it will show as a button */ .grid figure figcaption > a < z-index: 1000; text-indent: 200%; white-space: nowrap; font-size: 0; opacity: 0; >.grid figure h2 < word-spacing: -0.15em; font-weight: 300; >.grid figure h2 span < font-size: 2.2vw; font-family: 'Roboto', sans-serif; font-weight: 900; color: #FCDDE7; text-shadow: 4px 4px 6px #000; >.grid figure h2, .grid figure p < margin: 0; >.grid figure p < letter-spacing: 1px; font-size: 68.5%; font-size: 1.2vw; font-family: 'Roboto', sans-serif; font-weight: 900; text-shadow: 2px 2px 4px #000; >/***** Apollo *****/ /*-----------------*/ figure.andrei < background: #3498db; >figure.andrei img < opacity: 0.95; -webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s; -webkit-transform: scale3d(1.05,1.05,1); transform: scale3d(1.05,1.05,1); >figure.andrei figcaption::before < position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.5); content: ''; -webkit-transition: -webkit-transform 0.6s; transition: transform 0.6s; -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100%,0); transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100%,0); >figure.andrei p < position: absolute; right: 0; bottom: 0; margin: 1em; padding: 0 1em; max-width: 250px; border-right: 4px solid #fff; text-align: right; opacity: 0; -webkit-transition: opacity 0.35s; transition: opacity 0.35s; >figure.andrei h2 < text-align: left; >figure.andrei:hover img < opacity: 0.6; -webkit-transform: scale3d(1,1,1); transform: scale3d(1,1,1); >figure.andrei:hover figcaption::before < -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100%,0); transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100%,0); >figure.andrei:hover p

Источник

Отступ под изображением | HTML

котёнок мечтает стать львом

По умолчанию у картинки vertical-align: baseline;.

 figure 
Убрать отступы картинок cssна одной линии с текстом. Без свисания букв (р,д,у,ц)

Как убрать нижнюю полосу или отступ от картинки до div (или другого родительского элемента)

Вариант 1. Разместить изображение по середине строки

котёнок мечтает стать львом

 figure < border: 10px solid #456; >img 
Убрать отступы картинок cssпосмотреть немного другой ракурс

Вариант 2. Убрать размер шрифта или высоту строки

котёнок мечтает стать львом

Вариант 3. Сделать фотографию блоком

котёнок мечтает стать львом

Вариант 4. Задать фото float

котёнок мечтает стать львом

figure < display: inline-block; /* убрать действие float вне родительского блока */ width: calc(100% — 100px); /* Аааа. Почему именно 100px. Я к этой цифре пришла путём перебора значений */ border: 10px solid #456; > img

2 комментария:

Анонимный «Убрать . линию высоты»? line height — высота строки. NMitra Спасибо, исправила! У меня иногда бывает, когда язык заплетается. По-видимому, это сказывается и на письме. И ведь дописывала этот фрагмент этой статьи, когда сочиняла http://shpargalkablog.ru/2014/04/line-height-css.html

Источник

Элемент inline — пять способов убрать отступ

При оборачивании изображения в блок div внизу картинки возникает странный отступ.

Появляется он потому, что элемент img является строчным inline. При верстке часто возникает задача его убрать, так как он лишний и только портит дизайн. Решений данного вопроса существует несколько.

С тремя из них я был уже знаком благодаря замечательному ресурсу для верстальщиков — IMG внутри блока — убираем странный отступ.

Пять способов убрать отступ под картинкой

Создаем блок div с классом .image, для которого назначаем ширину, центрирование и границу для наглядности. Внутрь блока div.image помещаем картинку:

Изображение с отступом

2. Задать вертикальное выравнивание

Так как элемент img является строчным inline, то к нему применимо свойство vertical-align, как к любому строчному элементу. Мне такой способ нравиться больше всего:

Элемент inline - присвоить vertical-align: top

Элемент inline - присвоить float: left

4. Сделать картинку таблицей

Для изображения задать свойство display: table:

Элемент inline - присвоить display: table

Элемент inline - присвоить width

Все пять способов проверены мною и должны работать в реальности.

Красивая функция trackBy

Пример красивой функции trackBy для Angular. Функция понравилась своей лаконичностью:public trackByNumber = (_. … Continue reading

Источник

Как убрать отступ после изображения

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

Похожие публикации

Balalayka

Не могу расположить второй ряд картинок все div идут в одну строчку. Пробовал и команду clear (both, left) всем блокам прописан float:left.(Всё в конце кода). Заранее спасибо за помощь.На всякий случай прикреплю ещё картинки.
index.html
style.css

Здравствуйте! Есть небольшая проблема: имеется блок, в который вставляем строчные гиперссылки с изображениями внутри. Обнаружил, что в данном блоке появляется странный отступ снизу (зеленного цвета), от которого я не могу избавиться. Так как я новичок, то прошу помощи. Визуально проблему можно посмотреть здесь: https://jsfiddle.net. Проблема плевая, но я застрял . Заранее благодарю!

Такая конструкция работает нормально

css.
(Файл называется mains.css и находится по пути css/mains.css)
header background-image: url(../img/first-bg.jpg): no-repeat center top / cover;
height: 8 px;
width: 811 px;
>

Обсуждения

Switch74

http://htmlbook.ru/html/area на одной картинке можно организовать несколько областей ссылок ведущих на разные страницы

Switch74

margin внутри таблицы не работает, кста еще можно вот так реализовать так заливка ячеек будет корректно работать, если она нужна будет

row 1 cell 1 row 1 cell 2 row 1 cell 3
must contain
several lines
row 2 cell 1 row 2 cell 2
row 3 cell 1 row 3 cell 2
row 4 cell 1 row 4 cell 2
row 5 cell 1 row 5 cell 2 row 5 cell 3
row 6 cell 1 row 6 cell 2 row 5 cell 3

если не критично еще можно использовать обертку внутри ячеек, и с ней много чего можно дополнительного реализовать в таблицах

Switch74 Спасибо, второй вариант как раз то, что хотелось. Не понятно только, почему margin-top не работает, пробовал задавать и для клеточек, и для всей строки. А про padding как-то не подумал.

Switch74

тогда как выше предложили пустую строку

row 1 cell 1 row 1 cell 2 row 1 cell 3
must contain
several lines
row 2 cell 1 row 2 cell 2
row 3 cell 1 row 3 cell 2
row 4 cell 1 row 4 cell 2
row 5 cell 1 row 5 cell 2 row 5 cell 3
row 6 cell 1 row 6 cell 2 row 5 cell 3

или если подсветка ячеек не обязательна, то можно так

row 1 cell 1 row 1 cell 2 row 1 cell 3
must contain
several lines
row 2 cell 1 row 2 cell 2
row 3 cell 1 row 3 cell 2
row 4 cell 1 row 4 cell 2
row 5 cell 1 row 5 cell 2 row 5 cell 3
row 6 cell 1 row 6 cell 2 row 5 cell 3

Источник

Читайте также:  Illegal arguments exception java
Оцените статью