Вероятно, это глупый вопрос, но поскольку обычные способы выравнивания изображения по центру не работают, я подумал, что задам этот вопрос. Как я могу выровнять по центру (по горизонтали) изображение внутри его контейнера div?
Вот HTML и CSS. Я также включил CSS для других элементов миниатюры. Он работает в порядке убывания, поэтому самый высокий элемент - это контейнер всего, а самый низкий - внутри всего.
#thumbnailwrapper {
color: #2A2A2A;
margin-right: 5px;
border-radius: 0.2em;
margin-bottom: 5px;
background-color: #E9F7FE;
padding: 5px;
border: thin solid #DADADA;
font-size: 15px
}
#artiststhumbnail {
width: 120px;
height: 108px;
overflow: hidden;
border: thin solid #DADADA;
background-color: white;
}
#artiststhumbnail:hover {
left: 50px
}
<!--link here-->
<a href="NotByDesign">
<div id="thumbnailwrapper">
<a href="NotByDesign">
<!--name here-->
<b>Not By Design</b>
<br>
<div id="artiststhumbnail">
<a href="NotByDesign">
<!--image here-->
<img src="../files/noprofile.jpg" height="100%" alt="Not By Design" border="1" />
</a>
</div>
<div id="genre">Punk</div>
</div>
Хорошо, я добавил разметку без PHP, поэтому ее будет легче увидеть. Похоже, что ни одно из решений не работает на практике. Текст сверху и снизу не может быть центрирован, а изображение должно быть центрировано внутри его контейнера div. В контейнере скрыто переполнение, поэтому я хочу видеть центр изображения, как правило, там, где находится фокус.
img
являются предметом,text-align: center
если ониdisplay
не были изменены.text-align: center
img
было включено вa
. Я тупой.Ответы:
Парень CSS предлагает следующее:
Итак, перевод, возможно:
Вот мое решение в: http://jsfiddle.net/marvo/3k3CC/2/
источник
margin: auto
, зависят от содержащего элемента, имеющего назначенное значение ширины.img
я считаю, что в любом случае потребуется ширина, определенная для какого-либо эффектаauto
.CSS flexbox может сделать это с
justify-content: center
родительским элементом изображения. Чтобы сохранить пропорции изображения, добавьтеalign-self: flex-start;
к нему.HTML
CSS
Вывод:
Показать фрагмент кода
источник
align-items
для центрирования по вертикали. Различные варианты полей не работают для меня, потому что центрируемый элемент не имеет атрибутов width и height.align-self
к элементу изображения, как этот jsfiddle.net/3fgvkurdЯ только что нашел это решение ниже на странице CSS W3, и оно ответило на мою проблему.
Источник: http://www.w3.org/Style/Examples/007/center.en.html.
источник
max-width: 100%; max-height: 100%;
для изменения размера изображения, если экран меньше, чем изображение, но в этом случае он не по центру. Любые предложения о том, как центрироваться с этими двумя атрибутамиЭто также сделало бы это
источник
text-align:center;
иmargin:0 5px;
? Я добавил;
Лучшее, что я нашел (кажется, работает во всех браузерах) для центрирования изображения или любого элемента по горизонтали, - это создание класса CSS и включение следующих параметров:
CSS
Затем вы можете применить созданный вами класс CSS к вашему тегу следующим образом:
HTML
Вы также можете встроить CSS в свои элементы, выполнив следующие действия:
... но я бы не советовал писать встроенный CSS, потому что тогда вам нужно будет сделать несколько изменений во всех ваших тегах, используя центрирующий код CSS, если вы когда-нибудь захотите изменить стиль.
источник
Это то, что я в итоге сделал:
Это ограничит высоту изображения до 600 пикселей и будет горизонтальным центром (или уменьшением размера, если ширина родительского элемента меньше) относительно родительского контейнера, сохраняя пропорции.
источник
Я собираюсь выйти на конечности и сказать, что то, что вы ищете.
Обратите внимание, что следующее, на мой взгляд, было случайно опущено в вопросе (см. Комментарий):
Итак, что вам нужно, это:
http://jsfiddle.net/userdude/XStjX/3/
источник
Для центрирования изображения по горизонтали это работает:
источник
Добавьте это к вашему CSS:
Просто ссылаясь на дочерний элемент, который в этом случае является изображением.
источник
Поместите равные пиксельные отступы для левого и правого:
источник
Поместите картинку внутрь
newDiv
. Сделайте ширину содержимогоdiv
такой же, как изображение. Применитьmargin: 0 auto;
кnewDiv
. Это должно центрироватьdiv
внутри контейнера.источник
Используйте позиционирование. Следующее работало для меня ... (горизонтально и вертикально по центру)
С увеличением до центра изображения (изображение заполняет div):
Без увеличения до центра изображения (изображение не заполняет div):
источник
вы можете выровнять ваш контент, используя flex box с минимальным кодом
HTML
CSS
js fiddle link https://jsfiddle.net/7un6ku2m/
источник
Сосредоточить изображение в div
источник
Я попробовал несколько способов. Но этот способ прекрасно работает для меня
источник
Адаптивный способ центрировать изображение может быть таким:
источник
Если вам нужно сделать , это инлайн (например, при использовании поля ввода),
вот быстрый Хак , который работал для меня: окружить (ссылку на изображение в данном случае)
в
div
сstyle="text-align:center"
источник
источник
<div>
или<section>
вертикальный и горизонтальный центр страницы для всех устройств, просто используйте этот код стиля !!!!да, код вроде этого работает нормально
но просто чтобы напомнить вам, стиль для изображения
итоговый код будет похож на пример
источник
Использование свойства flex в контейнере является правильным решением для возможности центрирования как по вертикали, так и по горизонтали.
Верхний ответ здесь НЕ работает для центрирования элемента по вертикали, только по горизонтали.
источник
источник