Category image heights / General understanding of theme variables

Hey all,

while playing with some theme modifications I noticed this piece of SCSS code

@supports (--custom: property) {
  .category-logo.aspect-image {
    --max-height: 150px;
    max-height: var(--max-height);
    max-width: 60%;
    height: auto;
    width: calc(var(--max-height) * var(--aspect-ratio));

  }
}

I wonder what a proper way is (if there’s anyI) to change the max-height var here.

「いいね!」 1

I’m not sure what you’re trying to achieve, but if you just want to make the logo bigger / smaller then here’s something to get you started.

The category logo is used in a couple of places by default - on the categories page and on specific category pages.

If you want to modify the logo sizes in both those locations, you can use this

@supports (--custom: property) {
  .category-logo.aspect-image {
    --max-height: 200px; // change 200 to the desired height
  }
}

Once you change the--max-height variable, the width should adjust automatically.

If you want to something more specific, like changing the logo sizes on the categories page only, then please check the desktop_category_page_style site setting on your site and let me know what it’s set to.

If you want the change to only occur on desktop, then add the CSS above to the desktop CSS tab of your theme. If you want it to only occur on mobile then add it to the mobile CSS tab. If you want it to occur on both mobile and desktop, then add it to the common CSS tab.

「いいね!」 5

うーん、ご提案いただいた --max-height を変更しようとしましたが、インスペクターではその部分が更新されても、画像のサイズは変わりませんでした。

インスペクターで --aspect-ratio の値が設定されていないように見える(Chrome で値へのクリック可能なリンクがない)ことに気づき、どこで設定されているのかを見つけられませんでした。Discourse の GitHub コードを検索しましたが、まだ見つかりません。

--aspect-ratio が設定されている場所を見つけるか、どのような値を設定すべきか、何かアイデアはありますか?

編集:問題を見つけました。高さは Discourse Category Headers theme component によって設定されていました。

.category-header-widget .category-logo.aspect-image,
.category-header-widget .category-logo.aspect-image>img {
    float: left;
    margin: 0 0.5em 0.25em 0;
    max-height: 150px;
}

そのため、テーマで max-height をオーバーライドしました。

category-header-widget .category-logo.aspect-image,
.category-header-widget .category-logo.aspect-image>img  {
	max-height: 80px;
}

編集 #2:あなたの提案は、カテゴリ ページでのカテゴリ アイコンに対して機能しましたので、ありがとうございました!

「いいね!」 3