Avatar Size and Shape

:discourse2: Summary Avatar Size and Shape will allow you to easily change the size and shape of the avatars on your site.
:eyeglasses: Preview Preview on Discourse Theme Creator
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-avatar-component
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Features

Avatar Size and Shape allows you to easily customise the size and shape of avatars on your site in a variety of different locations.

Settings

Name Description
latest avatar size Choose the avatar size on latest. Default value is small (25px). To see the changes applied, refresh the page with ctrl+F5 or cmd+shift+R.
topic avatars size Choose the avatar size on topics. Default value is 45px. To see the changes applied, refresh the page with ctrl+F5 or cmd+shift+R.
header avatars size Choose the avatar size on header. Default value is 32px. To see the changes applied, refresh the page with ctrl+F5 or cmd+shift+R.
header height Choose the height of the header. The choice must be made based on the header_avatars_size + 10px. For example, if the header_avatars_size is set to 90px, the header should be 100px. Default value is 60px.
margin top Choose the distance in px from the header. Default value is 0px.
avatars border radius Choose the border-radius of the avatars on the site. The setting will be applied to all avatars, including the one on the header and the one on the user-card. 0% corresponds to a square shape, 50% to a rounded shape. Default value at 50%
mobile avatars size Choose the avatar size on topics on Mobile. Min value is 45px (default), max value is 80px. To see the changes applied, refresh the page with ctrl+F5 or cmd+shift+R.

Extra details:

  • latest avatar size changes the avatar size on the /latest page. All the avatars will be visible up to the medium size. From large onwards, only the avatar of the last user who wrote on the topic will be displayed.
  • header avatar size works well up to the 60px size. For avatars of a larger size, the height of the header must be increased (header height) and consequently, the margin-top that distances the header from the other elements of the page must also increase (margin top).

The position (in height) of the notification bubble (topics and PMs) has remained unchanged. These bubbles will only move horizontally following the avatar size.

Development History

This theme component was written taking inspiration from the guides

:discourse2: Hosted by us? Theme components are available to use on our Standard, Business, and Enterprise plans.

Last edited by @JammyDodger 2024-06-11T08:14:10Z

Check documentPerform check on document:
46 лайков

How would I go about changing the size of the topic avatar on mobile with this? 80px looks pretty good on desktop, but obnoxious on mobile. I tried changing .topic-avatar width but it just shifts the text and the avatar stays the same.

3 лайка

Отличный компонент, мы его искали.

Но было бы здорово изменить и размер аватар-флейра, если вы используете их на своём сайте (как и мы).

Спасибо.

Очень круто! Жаль, что нельзя установить размер аватара темы на 53 :frowning:

Также относится ли это к аватарам в div-элементе topic-poster, который встречается в некоторых раскладках категорий на главной странице? Похоже, что нет, но было бы здорово, если бы это работало.

Вы нашли способ это сделать?

@dax Я обнаружил небольшую проблему, которая конфликтует с плагином Quick Messages.
Следующий CSS-код также затрагивает значок уведомлений плагина Quick Messages:

.d-header-icons .unread-private-messages {
    right: auto;
    left: -10%; /* <--- это и есть причина */
}

Может быть, добавить какой-нибудь элемент #… к CSS-селектору?

1 лайк

Вы нашли решение для мобильной версии?

Нет, к сожалению, так и не удалось найти способ это сделать.

1 лайк

Я посмотрю на этой неделе, если будет время.

6 лайков

Появилась новая настройка для изменения размера на мобильном устройстве: от 45 пикселей (по умолчанию) до 80 пикселей.

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

6 лайков

Спасибо, Даниэла, у меня есть ещё одно предложение. Было бы здорово, если бы была возможность оставить аватарки ответов включёнными для размеров large или extra_large, чтобы я мог уменьшить их размер через CSS. Или же добавить опцию для уменьшения размера аватарок ответов в самом плагине. Я пытаюсь добиться этого, но, конечно, увеличенная аватарка получается размытой из-за масштабирования аватарки среднего размера.

image

2 лайка

Отличный плагин! Спасибо!

@Dax Единственная проблема, которую я сейчас замечаю, касается заголовка, который имеет более темный цвет. При наведении курсора цвет меняется на белый, что отлично работает на кнопке поиска и в гамбургер-меню, но когда аватар установлен на немного больший размер, область наведения становится меньше самого аватара. Подскажите, как это исправить?

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

3 лайка

Отличный компонент.
Он позволяет легко управлять размером и пропорциями вашего аватара, не изменяя CSS вашей темы (что может вызвать проблемы при обновлении темы).

Нет, изменений в цветах нет.

Мы используем его и довольны результатом.

2 лайка

@dax Возможно, я не очень хорошо объяснил. Речь идет не о цвете, а о размере контейнера. Если навести курсор на свой значок аватара в правом верхнем углу страницы здесь, на meta, появится цветной квадрат с свойством :hover, и этот квадрат больше, чем сам аватар.

Screen Shot 2020-04-09 at 7.51.04 AM

Однако, если я увеличу аватар с помощью этого плагина, размер квадрата :hover становится меньше, чем аватар, и это выглядит немного странно.

1 лайк

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

3 лайка

Разве нельзя просто применить CSS к:

.header-dropdown-toggle #current-user

?

Нет, это не так просто.

Я посмотрю в ближайшие часы

2 лайка

Я пытаюсь реализовать это в CSS, но поскольку все иконки в заголовке используют один и тот же класс:

<li class="header-dropdown-toggle">

получается, что они либо все активны, либо все неактивны. Как вам удалось сделать так, чтобы аватар не реагировал на :hover?

1 лайк

Кстати, мне удалось добиться довольно эффектного результата в CSS, добавив состояние :hover для аватара (белая рамка). Теперь осталось только сделать так, чтобы фон элемента li не подсвечивался вместе с остальным содержимым…

Screen Shot 2020-04-09 at 6.45.24 PM

Screen Shot 2020-04-09 at 6.44.16 PM

1 лайк