So ändern Sie die Farbe des Kopfzeilen-Icons?

So sieht unser Forum derzeit aus…

Wir werden unser Farbschema neu gestalten. Die Kopfzeile wird grün sein, mit einem weißen Logo in der Kopfzeile.

Ich habe Schwierigkeiten herauszufinden, wie man die Farben des Lupensymbols und des Hamburger-Menü-Icons in der Kopfzeile ändert. Derzeit sind sie grau, was auf einem grünen Hintergrund sehr schlecht aussehen würde. Die weißen Icons würden auch besser zum neuen Kopfzeilen-Logo passen.

Ich habe im Themen-Menü nachgeschaut und dort eine Option namens „Header primary" gefunden, deren Beschreibung besagt, dass sie Text und Icons in der Kopfzeile der Website ändert. Ich habe sie jedoch bereits auf Weiß gesetzt, und es hat sich nichts geändert. Gibt es eine andere Möglichkeit, die Farbe dieser beiden Icons zu ändern?

The icons are a bit transparent, which might be throwing you off (that’s why they look grey instead of white when the header_primary color is set to white).

You can add some custom CSS to change this

.d-header-icons .icon {
  color: red; // custom color, if needed
  &.btn-flat .d-icon {
    opacity: 1; // remove transparency 
   }
}

Hi,

I have this CSS:

header{
    
    height: auto !important;
    
    .wrap{
        padding:14px 0;
    }
    
    .btn-flat .d-icon{
        opacity: 1 !important;
    }
    
    .d-header-icons .icon{
        color: #ffffff;
        padding: 0.4em;
    }
    
    .d-header-icons .icon:hover{
        background-color: #ffffff;
        opacity: 1 !important;
        color: #001d4d;
    }

However, perhaps as we are now on one of the latest releases, now the home, search, and menu icons are greyed out. Can you explain how to make these icons white with opacity of 1? Did any of the selectors change?

Yes, these selectors are a little more specific now and we removed the opacity entirely in favor of using a solid color (there was a bug in Safari where SVG icons were clipped slightly because of the opacity).

You can remove anything you have related to opacity, and do this

.d-header-icons .d-icon {
   color: #fff; 
}

.d-header-icons .d-icon:hover {
   background-color: #fff; 
   color: #001d4d;
}

I have a similar problem as the OP, probably somewhat simpler: For some reason the colour of the header icons got darker for no apparent reason (I assume it was related to the tidy-up measures on your side). Since my header is a darkish, I want the icons brighter.

I tried this

and am happy with the result. But I can’t seem to figure out how the hover settings work. With only the above css, my hover looks like this:

image

So the icon turns grey again, which is okay, but I’d like to try some other tints on it. The background seems to turn white (or almost white), which I would like to change to make it coherent with other menus.

I tried

.d-header-icons .d-icon:hover {
   background-color: #b0cee8; 
   color: #fff;
}

but it gives me this:

image

How do I get the whole box to change color? And I don’t understand why the icon itself doesn’t stay white…

And while I’m at it: My new topic button also suffered. The colour of the + icon is no longer the same as the text:

image

My CSS for the button is (and has always been):

@import "common/foundation/variables";

#create-topic {
    background-color: $tertiary;
    color: $secondary;
}

#create-topic:hover {
    background-color: $tertiary-high;
    color: $secondary;
}

Hey, something has changed since your suggestion. I’m not sure why but this isn’t working for me either. CSS sheet looks like this:

    .custom-header-links a:hover {
    background-color:#346A77;
    }

    .d-header-icons .d-icon {
       color: black; 
    }

    .d-header-icons .d-icon:hover {
       background-color: #346A77; 
       color: red;
    }

The icons and the hover look like this–whatever color I make the icons or the hover it doesn’t “take”:

When I inspect the element it is showing that the style is there, but it’s not cascading for some reason. Any ideas?

image

I have installed custom headers but that wouldn’t be changing anything would it?

Many thanks

Update: the following code works and @tophee this should solve yours too:

.d-header-icons .d-icon {
   color: black !important;
}

.d-header-icons a:hover {
   background-color: #346A77 !important;
}

Thank you for the code.

I’m posting this in case someone runs into the same issue as me, but depending on the combination of colors you are using for your header and your icons (my header is a dark color), I was getting the right color combinations for my icons with the code you provided:

.d-header-icons .d-icon {
color: white !important;
}

.d-header-icons a:hover {
background-color: #789946 !important;
color: white !important;
} 

However, whenever I clicked on the header icons and hovered out of them, the background reverted to a solid white color, which did not work as my header is dark and my icons are set to white. So on hovering out of them (after a click), they would show as a solid white rectangle). To fix this, all I had to do was also set the state for “a”, not just “a:hover” as in the above posts (#93bb54 being the same color as my header):

.d-header-icons .d-icon {
color: white !important;
}

.d-header-icons a:hover {
background-color: #789946 !important;
color: white !important;
} 

.d-header-icons a {
background-color: #93bb54 !important;
color: white !important;
}

Voila!

Hey @awesomerobot, why doesn’t

.d-header-icons .d-icon {
color: white !important;
}

work on other icons like this envelope icon in a conversation, which is also d-icon if I inspect the element?

Screen Shot 2019-12-18 at 13.41.50

.d-header-icons specifically refers to the nav on the right.

For the PM title icon, you’ll need

.extra-info-wrapper .private-message-glyph { color: red }

For other topic statuses, like pins and locked topics you can use

.extra-info-wrapper .topic-statuses .d-icon { color: red; }

I added some custom icons in SVG, but I can’t change their color using CSS. They are always black. I can change the opacity, size … but never the color.

I tried using the above examples, but none returned the expected result.

.list-controls .btn .d-icon{
   color: #2CC3D5 !important;
   opacity: 0.5;
}

image

I tried for the header icons too.

What am i doing wrong?

Does the icon have a color defined inline in the SVG code? It would probably look something like this:

If so you can either remove it, or change the value to currentColor.

Hey Leute,
ich habe ein Problem, wenn:

  1. Ich auf das Menü klicke (sieht bis hierhin großartig aus)
  2. Wenn ich die Maus wegbewege, muss sich die Farbe des Symbols genauso ändern wie der Hintergrund, da das Symbol hinter dem Weiß verschwindet:

Versuchen Sie Folgendes:

.drop-down-mode .d-header-icons .active .icon {
    background: black;
}

Wie kann ich das CSS für ein bestimmtes Icon ändern?

<svg class="fa d-icon d-icon-bolt svg-icon svg-node" aria-hidden="true"><use xlink:href="#bolt"></use></svg>

Das ist das Icon, für das ich das CSS anpassen möchte.

Hier ist es, @Juless

Solche sehr spezifischen CSS-Selektoren funktionieren zwar, werden aber selten verwendet, da es normalerweise nicht notwendig ist, so spezifisch zu sein:

svg.fa.d-icon.d-icon-bolt.svg-icon.svg-node{
  /* dein cooler CSS-Code hier */
}

In der Praxis sollte jedoch dieser einfache Selektor völlig ausreichen:

svg.d-icon-bolt{
   /* dein cooler CSS-Code hier */
}

Ich hoffe, das hilft dir weiter.

Du könntest sogar mit folgendem auskommen:

.d-icon-bolt{
   /* dein cooler CSS-Code hier */
}

Ich habe diesen hier verwendet, und er hat perfekt funktioniert. Vielen Dank @neounix, wirklich hilfreich.

Ich habe die gleiche Situation wie Sentinelrv. Ich habe die Primärfarbe des Headers auf Weiß eingestellt und auch den empfohlenen benutzerdefinierten CSS-Code auf jedes meiner Themes angewendet, aber die Lupe und das Hamburger-Menü bleiben weiterhin grau.

Ich kann die Farben des Hamburger-/Balkenmenüs ebenfalls nicht ändern, das Such-/Find-Symbol hat sich geändert – ich habe alle oben genannten Tipps und mehr ausprobiert, indem ich Dinge im Webbrowser inspiziert habe, aber (da ich kein Webentwickler bin) bin ich gescheitert. Hat das jemand herausgefunden?

Für die Header-Icons auf der rechten Seite, in common-css eines Themes oder einer Theme-Komponente:

.d-header .d-header-icons .d-icon  {
    color: <header icons color> !important;
    &:hover {
        color: <header icons hover color> !important;
    }
 }

Für das Hamburger-Icon im Seitenleisten-Menümodus:

.d-header .header-sidebar-toggle button .d-icon {
    color: <hamburger icon color> !important;
    &:hover {
        color: <hamburger icon hover color> !important;
    }
}

<header icons color>, <hamburger icons color>, <header icon hover color>, <hamburger icon hover color> = Hex, Farbname oder Theme-Farbvariablen. Sie können auch background-color angeben, wenn Sie die Icon-Hintergrundfarbe ändern möchten.

Hinweis: Wenn Sie den Hamburger-Dropdown-Modus anstelle der Seitenleiste verwenden, enthält der erste Ausschnitt für die Header-Icons auf der rechten Seite auch das Hamburger-Icon.