Come aumentare la dimensione degli avatar nei post senza sfocarli

:loudspeaker: :warning: Questa guida è ora deprecata a favore del componente tema Avatar Size and Shape :warning: :loudspeaker:

Contenuto originale

1. Aumentare le dimensioni e riposizionare l’avatar

Per aumentare le dimensioni dell’avatar da 45px (predefinito) a un massimo di 120px, aggiungi il codice sopra nella scheda Personalizza > Temi > Desktop > CSS
(Insomma, hai davvero bisogno di avatar più grandi di 120px? :exploding_head:)
Nell’esempio sopra ho aumentato le dimensioni dell’avatar a 90px e ne ho modificato la posizione

/*Aumenta le dimensioni degli avatar*/

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

/*Gli avatar nei messaggi incorporati rimarranno delle dimensioni predefinite;
aumenta o diminuisce le dimensioni in base alle tue esigenze*/

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

Tuttavia, se utilizzi i flair per i gruppi principali, ora saranno troppo piccoli

2. (Opzionale) Aumentare le dimensioni e riposizionare i flair

Aumentiamo leggermente le dimensioni del flair. Di default è 14px, io le raddoppio a 28px.
A seconda delle dimensioni degli avatar che hai scelto, dovrai aumentare o diminuire le dimensioni del flair di conseguenza.

/*Aumenta le dimensioni del flair*/

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

/*Mantieni le dimensioni predefinite nei messaggi incorporati;
aumenta o diminuisce le dimensioni in base alle tue esigenze*/

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

3. Niente più avatar sfocati

Aggiungi questo script nella scheda Desktop > Head. Ricordati di modificare la dimensione (‘90’) con quella che hai scelto

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

17 Mi Piace

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 Mi Piace

@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 Mi Piace

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 Mi Piace

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 Mi Piace

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 Mi Piace

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 Mi Piace