Проблема многих вебмастеров при создании галерей, списков изображений или при выводе миниатюр картинок товара заключается в соблюдении одинаковых пропорций. Согласитесь приятно смотреть на миниатюры одинаковых пропорций, чем если бы они были вразнобой.

Обычно я решал данную проблему через overflow: hidden; и div, на который устанавливал ограничение по высоте картинок. Подробнее расскажу чуть позже. Сначала давайте поэтапно рассмотрим разные возможности по созданию миниатюр картинок одинакового размера от худшего к лучшему.

Итак, предположим у нас есть галерея в два ряда по три картинки в каждой. Все картинки по высоте и ширине разного размера, а нам нужно, чтобы миниатюрки были одинаковые. Сделаем это через css. Живую демонстрацию и скачать исходник вы можете внизу урока.

Вариант 1 (исходный)








Выглядело бы это все так:

Здесь каждая картинка обернута в div с классом ramka на который назначено свойство выравнивать картинки по левому краю. А в картинках.gallery1 img назначен размер по ширине 150px. Так как высота не указана, то она грузится исходной, чтобы не искажать пропорции картинок. Почему при таком способе все ряды съехали - именно из-за того, что высота картинок всегда разная. Этот способ не подходит.

Вариант 2 (с заданием принудительных пропорций картинок)








Чтобы ряды с картинками не разъезжались в этом примере мы задали принудительную высоту и ширину каждой картинке. В результате чего картинки стали с искаженными пропорциями.

Вариант 3 (с заданием нужных пропорций картинок и обрезкой по высоте)








Это один из лучших способов приведения картинок под один формат. Я его использовал до сегодняшнего дня, пока не узнал о свойстве object-fit. Посмотрите на.gallery3 .ramka - здесь теперь overflow: hidden; который ограничивает размеры дива указанные в нем на 150x150px. В картинке задана ширина на 100%.

За счет этого метода все что выходит из дива больше, чем на 150px будет обрезаться. Не смотря на то, что скриншот галереи выглядит невзрачным, - это сделано специально, чтобы показать недостаток метода. Чтобы галерея была более приятной, нужно в диве ограничить высоту, например, на 100px, тогда все картинки без искажений будут в одном размере. Но минусом будет то, что картинки с очень большой высотой обрежутся снизу.

Вариант 4 (с заданием нужных пропорций картинок за счет object-fit: cover;)








Этот пример идеально демонстрирует, как создавать в html галерею с одинаковыми миниатюрами. Посмотрите в код на.gallery5 img - теперь здесь указаны нужные нам размеры миниатюр и свойство object-fit: cover; которое делает "обрезку" фоток на лету. Картинки "обрезаться" по центру без искажений.

ps

Размеры можно задавать и так (к диву, а картинка по 100%)
.gallery5 .ramka {float: left;margin-right: 10px;margin-bottom: 10px;width: 150px;height: 150px;
.gallery5 img {width: 100%; height: 100%; object-fit: cover;}

У свойства object-fit есть несколько параметров.

fill - масштабируется с сохранением пропорций, но с искажениями (как вариант 2).
contain - элемент масштабируется так, чтобы вместиться в элемент без искажений и обрезки
cover - картинка масштабируется (уменьшается или увеличивается) так, чтобы полностью вместиться в область без искажений (как вариант 4).

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

Табличный процессор Excel очень удобен для работы с различного рода данными. Правда, некоторые на первый взгляд простые вещи в нем выполнить довольно трудно - пользователь попросту не знает, как это сделать. В частности, это относится к выравниванию ячеек. В статье будет рассказано, как сделать ячейки одинакового размера в Excel тремя различными методами.

Метод первый: выравнивание выбранной области

Все способы выравнивания ячеек таблицы в Excel можно разбить на категории по потребностям пользователя. Начнем с самого часто используемого метода, который поможет выровнять ячейки в определенном диапазоне листа:

  1. Выделите на листе таблицы область ячеек, которые нужно выровнять.
  2. Нажмите по выпадающему списку «Формат», который расположен во вкладке «Главная».
  3. В появившемся меню кликните по разделу «Высота строки».
  4. В открывшемся окошке введите значение высоты строки и нажмите «ОК».

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

  1. Выделите нужную область ячеек.
  2. В выпадающем списке «Формат» выберите пункт «Ширина столбца».
  3. Введите нужное значение.
  4. Нажмите «ОК».

Теперь у вас ячейки одинакового размера как по высоте, так и по ширине. А это означает, что вы освоили первый способ того, как сделать ячейки одинакового размера в Excel.

Метод второй: выравнивание всего листа

Второй способ используют в том случае, если необходимо задать размеры ячеек во всем листе, а не в определенном диапазоне. Инструкция по выполнению этой задачи практически идентична предыдущей:

  1. Выделите всю таблицу. Для этого нажмите на квадрат, расположенный на пересечении нумерации строк и ряда столбцов, или используйте сочетание горячих клавиш Ctrl+A.
  2. На главной вкладке из выпадающего списка «Формат» выберите опцию «Высота строки» и укажите желаемое значение.
  3. Из того же списка выберите пункт «Ширина столбца» и введите нужное значение.

Метод третий: перетягивание границ

Как быть, если вам нужно просто сделать размер строк или ширину столбцов одинаковыми, но нет нужды задавать им определенный размер? Нет смысла бродить по всем пунктам меню, можно просто задать размер вручную - на глаз.

  1. Выделите диапазон строк или столбцов таблицы.
  2. Установите курсор на стыке двух столбцов или строк.
  3. Нажмите левую кнопку мыши и, удерживая ее, измените размер ширины или высоты.

В момент выполнения этого действия вы можете заметить, что размер изменяется не только в выбранном столбце или строке, а во всем заранее выделенном диапазоне. Это третий способ, как сделать ячейки в «Эксель» одинакового размера.


Графики и диаграммы (5)
Работа с VB проектом (12)
Условное форматирование (5)
Списки и диапазоны (5)
Макросы(VBA процедуры) (63)
Разное (39)
Баги и глюки Excel (3)

Как сделать одинаковые изменения сразу на нескольких листах

Допустим у Вас есть книга с n -ным количеством однотипных листов. Иногда приходится проделывать в каждом листе одну и ту же операцию(к примеру написание заголовков) . Чаще всего в таких случаях проделывается следующая операция: на одном листе меняются заголовки, затем копируются и поочередно вставляются на остальные листа. Это долго, нудно и неинтересно. Благо разработчики Microsoft предвидели подобные мучения и снабдили Excel средством для более быстрого осуществления этой задачи.

Итак, для произведения одинаковых изменений сразу на нескольких листах все, что необходимо сделать, это выделить все необходимые листы с зажатой клавишей Shift или Ctrl (зависит от расположения листов, данные в которых надо менять. Ctrl позволяет выделить несмежные листы(скажем через один), а с Shift выделяются все листы от первого выделенного до последнего) . Выделили. Теперь все действия, производимые на активном(видимом) листе в точности повторяется на других выделенных листах. И что не менее важно - если прописать в активном листе формулу, то ссылки на других листах будут у каждого свои, т.е. ссылаться формулы будут на тот лист, в котором написаны(если в формуле не указаны явно ссылки на другие листы) . То же самое и с копированием. Если на одном листе в ячейке А1 написано Дом , а на другом Холм , то при копировании ячейки А1 на активном листе и вставки её в ячейку А2 , то на каждом листе в ячейку А2 будет скопировано своё значение - Дом и Холм соответственно.

Подобная работа с листами еще называется работой с группой листов. Определить, что на данный момент выделена группа листов(и изменения будут производиться на всех этих листах) очень просто - в заголовке Excel будет отображен текст: [Группа]

Разгруппировать такие листы еще проще:

  • если в группу объединены не все листы - выделить любой лист вне группы
  • если в группе все листы книги - выделить любой лист, который на данный момент не является активным

Так же см.:
[[Как одновременно просматривать информацию с нескольких листов/диапазонов?]]

Статья помогла? Поделись ссылкой с друзьями! Видеоуроки

{"Bottom bar":{"textstyle":"static","textpositionstatic":"bottom","textautohide":true,"textpositionmarginstatic":0,"textpositiondynamic":"bottomleft","textpositionmarginleft":24,"textpositionmarginright":24,"textpositionmargintop":24,"textpositionmarginbottom":24,"texteffect":"slide","texteffecteasing":"easeOutCubic","texteffectduration":600,"texteffectslidedirection":"left","texteffectslidedistance":30,"texteffectdelay":500,"texteffectseparate":false,"texteffect1":"slide","texteffectslidedirection1":"right","texteffectslidedistance1":120,"texteffecteasing1":"easeOutCubic","texteffectduration1":600,"texteffectdelay1":1000,"texteffect2":"slide","texteffectslidedirection2":"right","texteffectslidedistance2":120,"texteffecteasing2":"easeOutCubic","texteffectduration2":600,"texteffectdelay2":1500,"textcss":"display:block; padding:12px; text-align:left;","textbgcss":"display:block; position:absolute; top:0px; left:0px; width:100%; height:100%; background-color:#333333; opacity:0.6; filter:alpha(opacity=60);","titlecss":"display:block; position:relative; font:bold 14px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff;","descriptioncss":"display:block; position:relative; font:12px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff; margin-top:8px;","buttoncss":"display:block; position:relative; margin-top:8px;","texteffectresponsive":true,"texteffectresponsivesize":640,"titlecssresponsive":"font-size:12px;","descriptioncssresponsive":"display:none !important;","buttoncssresponsive":"","addgooglefonts":false,"googlefonts":"","textleftrightpercentforstatic":40}}