Como aumentar o tamanho dos avatares nos posts sem deixá-los borrados

:loudspeaker: :warning: Este guia está agora obsoleto em favor do componente de tema Avatar Size and Shape :warning: :loudspeaker:

Conteúdo Original

1. Aumentar o tamanho e reposicionar o avatar

Para aumentar o tamanho do avatar de 45px (padrão) para no máximo 120px, adicione o código acima na sua aba personalizar > temas > Desktop > CSS
(Quero dizer, você realmente precisa de avatares maiores que 120px? :exploding_head:)
No exemplo acima, aumentei o tamanho do avatar para 90px e o reposicionei

/*Aumentar avatares*/

.topic-avatar {
  width: 90px;
  .avatar {
    width: 90px;
    height: 90px;
  }
}

/*Avatares nas respostas incorporadas permanecerão no tamanho padrão,
aumente ou diminua o tamanho conforme suas necessidades*/

.embedded-posts .topic-avatar {
  width: 45px;
  img.avatar {
    width: 45px;
    height: 45px;
  }
}

Mas se você usar o flair para os grupos principais, eles ficarão muito pequenos agora

2. (Opcional) Aumentar o tamanho e reposicionar os flairs

Vamos aumentar um pouco o flair. Por padrão, ele é de 14px, eu dobrei o tamanho para 28px.
Dependendo do tamanho dos avatares que você escolheu, você terá que aumentar ou diminuir o tamanho do flair de acordo.

/*Aumentar o tamanho do flair*/

.topic-avatar .avatar-flair {
  font-size: 28px;
  width: 30px;
  height: 30px;
}

/*Mantenha o tamanho padrão nas postagens incorporadas,
aumente ou diminua o tamanho conforme suas necessidades*/

.embedded-posts.bottom .topic-avatar .avatar-flair {
  font-size: 14px;
  width: 20px;
  height: 20px;
}

3. Sem mais avatar desfocado.

Adicione este script na aba Desktop > Head. Lembre-se de alterar o tamanho (‘90’) para o tamanho que você escolheu

<script>
Discourse._registerPluginCode('0.8', function (api) {
  api.changeWidgetSetting('post-avatar', 'size', '90');
});
</script>

17 curtidas

has this script been broken in Discourse 2 Beta 10? The 90px avatars look blurred (the one on the left).
39%20PM

I have tried this on a Material Design Theme and the “font-size:” field is not changing the flair size no matter the size i’m setting. The width and height does change the position of the flair meaning they are working but the font-size not. Any ideas how to solve this?

I will take a look Monday Friday

3 curtidas

@Mr.X_Mr.X have you tried to clear your browser’s cache?

This is the only reason why at the beginning I did not correctly load the component and the material design theme

3 curtidas

is there any way to change the avatar size for topics of one category?

I know this can be done via css, but I want the javascript to be also limited for the specific category so that it doesn’t load large images for the unnecessary cases.

CSS doesn’t instruct a browser on what size images to get for the avatars. It instructs a browser on what size to render the images it’s served. What you need to be concerned about is not “loading large” images. But retaining quality when smaller dimension images are displayed larger than they are. (usually enlarging small images larger is a poor idea, but you should be able to get a bit of a tweak by OK)

p.s.: I don’t know how to explain what I mean, and thanks in advance for your patience.

to get a 90px image, for the avatar, as explained above, I should use a script:

now I want this script to work only for a specific category. is it possible to achieve this via js, such taht other categories get 45 px avatar as usual?

Thanks, it was me, not you. I was thinking you wanted to use CSS to control image size instead of modifying this

<script>
Discourse._registerPluginCode('0.8', function (api) {
  api.changeWidgetSetting('post-avatar', 'size', '90');
});
</script>

I’m pretty sure I have seen JavaScript for using categories in conditional checks, but it will take me a while to track it down, if it exists.

3 curtidas

It seems not to work after latest update.
HTML for topic avatars now looks like this:

<img alt="" width="45" height="45" src="/user_avatar/example.com/username/45/2710_1.png" title="Full Name" class="avatar">
3 curtidas

I just tested the code from @Mittineague locally, and it works. The size of the image is set to 90px wide in the HTML:

And the images display at 90px as well.

3 curtidas

Yeah, after copypasting it it works once again, but no idea why, as only difference was this bit of code :face_with_raised_eyebrow:

<script type="text/discourse-plugin">
3 curtidas