16:56

Рождение разума — это видение сердцем.
Доброго времени, дамы и господа.
Прошу вашей помощи: как корректно обрезать вертикальные-горизонтальные аватарки под квардрат, да так чтоб без потери пропорций?
Идея в том, чтобы в ленте избранного все аватарки отображались формата 100х100, кадрированные либо по ширине, либо по высоте (в идеале так, чтобы потом их можно было загнать в радиус при необходимости). Это вообще возможно в рамках css?
Заранее благодарна за любые идеи, допилить, если что, под себя я их смогу.

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


@темы: diaryCSS, Дизайн

Комментарии
13.11.2014 в 18:02

Не так страшен чёрт, как его трезубец в заднем проходе.
так обрезать или масштабировать?
13.11.2014 в 18:13

Не говорите так быстро, я не успеваю класть х*р на ваши слова.
У меня вот так получилось:

.avatar {width: 100px !important; height: 100px !important; overflow: hidden !important;}
.avatar img {min-width: 100px !important; min-height: 100px !important;}
(Вторая строка нужна для маcштабирования аватарок меньше 100px).

Но обрезается не равномерно со всех сторон, а справа и снизу, если на авке рамки, то смотрится некрасиво, ваша аватарка вообще в ппц превратилась, так как круг обрезался с двух сторон.
13.11.2014 в 19:00

Рождение разума — это видение сердцем.
Aista, мастшабировать под фиксированную ширину/высоту в зависимости от формата изображения вертикаль/горизонталь и обрезать лишнее, если выразиться точнее.

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


В гугле находила некий параметр clip но так и не поняла, как его можно применить в такой ситуации. Например, вот основная идея хорошо изложена, но я не настолько продвинута, чтобы вписать это в дайри-css: webo4ka.ru/load/46-1-0-3663

читать дальше

Или, возможно, что-то из этой идеи может сработать, но я тоже не представляю, как именно это прикрутить сюда: shpargalkablog.ru/2012/01/css-overflow-word-wra...
13.11.2014 в 19:08

Не говорите так быстро, я не успеваю класть х*р на ваши слова.
Lynn, это из-за того, что у вас автоматически дизайн установлен, а там прописано:
.avatar img {width:100px; height: 100px; padding: 5px 5px 5px 5px !important; z-index: 1; background:#ffffff;}

Если это убрать, и добавить код как я выше привела, тогда будет обрезаться, но это надо либо переустанавливать диз вручную, либо как-то перебивать свойства, а я не соображу пока как...
13.11.2014 в 19:15

Не так страшен чёрт, как его трезубец в заднем проходе.
Lynn, max-width:100px; max-high:100px не пробовали?
13.11.2014 в 20:08

Рождение разума — это видение сердцем.
Тайя, которая душит романтиков, с установкой ручного дизайна тут ровно одна проблема - в процессе съезжают блоки меню. Косяк в коде я найти так и не смогла - вроде бы берешь код из поста, ставишь куда положено, а получается в итоге неисправимая ерунда. Так что я смирилась, вроде бы часть параметров !important перебивается...
Но кстати, в оригинальном коде стоит ровно то же самое. Я потому и меняла на пропорциональное маштабирование, чтобы не искажались картинки.




Aista, неа, не спасает.(( Они все равно ужимают изображение (аналогично фотошопному "размер изображения") а мне бы найти "размер холста"
13.11.2014 в 20:11

Не так страшен чёрт, как его трезубец в заднем проходе.
Lynn, а width:auto; max-high:100px?
13.11.2014 в 20:21

Рождение разума — это видение сердцем.
Aista, тоже не вполне оно - отлично подойдет для ужимания высоких изображений, но никак не действует на широкие.
Жаль, что в css нельзя прописать if, было бы как раз то, что надо... один алгоритм для широких, другой для высоких и третий для исходно квадратных.
13.11.2014 в 20:51

Рождение разума — это видение сердцем.
*подумав и помучавшись*
Мда, кажется, реально никак. Либо хвосты вырастают, либо рога вылазят - так или иначе невозможно одновременно урезать вертикальное по высоте и горизонтальное по ширине, сохраняя общий параметр 100х100 - при условии, что меняешь именно размер картинки с сохранением пропорций. Мне чудовищно не хватает понимания принципов встройки свойства clip или хотя бы overflow: hidden в эту конструкцию...
13.11.2014 в 20:56

Не так страшен чёрт, как его трезубец в заднем проходе.
Lynn, тогда вариант как выше предлагали с небольшим фиксом
.avatar {width: 100px; height: 100px; overflow: hidden;}
.avatar img {width:auto;high:auto}
13.11.2014 в 21:18

Не так страшен чёрт, как его трезубец в заднем проходе.
.avatar {width: 100px; height: 100px; overflow: hidden;}
.avatar img {width:auto;height:auto}
13.11.2014 в 21:45

Рождение разума — это видение сердцем.
Aista, заработало! В допиленном, правда, виде, но таки заработало. :)
Спасибо!


13.11.2014 в 22:44

Не говорите так быстро, я не успеваю класть х*р на ваши слова.
Lynn, добавьте просто border-radius еще. -moz-borer-radius - он для старых версий мозиллы, я например, без просто border-radius круглых углов не вижу.
13.11.2014 в 22:46

Рождение разума — это видение сердцем.
Тайя, которая душит романтиков, добавила. Так видно?
Вообще суммарно в коде получилось так: