Skip to content

[NODEBB] CSS Style Sheets SelectBox

Locked Solved Customisation
112 2 32.9k 1
  • Ola @phenomlab

    If you want we can use team viewer for see that.

  • Ola @phenomlab

    If you want we can use team viewer for see that.

    @downpw you may need to do this with jQuery. Can you provide a mock-up of what you’re looking for ?

  • @phenomlab

    Ola @phenomlab

    If you want we can use team viewer for see that.

    If I don’t use your code, here the icon = KO (Not White like other) :
    6b46b834-68bf-4f37-b411-ff11162f645d-image.png

    Icon on Mouse Over and on Click = OK: aqua background, black icon
    bc5bd4e2-ae9b-4bbf-b372-8efc800a3ee4-image.png

    After click, when dropdown the menu = OK: aqua background, black icon

    77c309dc-ba04-40f1-b3b8-521c2f732fd6-image.png


    I I use your code with White color :

    [data-original-title="Theme Switcher"] i {
        color: #fff;
    }
    

    the icon is white like others = OK
    7b285991-3c10-41e7-b4f7-6b6c3859af45-image.png

    Icon on Mouse Over and on Click = OK: aqua background, black icon
    d2e632ba-4b28-45df-8253-96eaa653ddc1-image.png

    After click, when dropdown the menu = KO : the icon is white and not black 😞
    d8511eca-6c82-4456-b2c1-0fbe00cf15d1-image.png

  • In fact , I would loike:

    • The dominant color of each theme in the background of the icon when the mouse is hovered, when the mouse is clicked and when dropdown in the menu.

    • White color of the icon in normal.

    • Black color of the icon when the mouse is hovered, when the mouse is clicked and when dropdown in the menu. (Even choose the color for each theme if possible)

  • In fact , I would loike:

    • The dominant color of each theme in the background of the icon when the mouse is hovered, when the mouse is clicked and when dropdown in the menu.

    • White color of the icon in normal.

    • Black color of the icon when the mouse is hovered, when the mouse is clicked and when dropdown in the menu. (Even choose the color for each theme if possible)

    @downpw Having looked at this, it will indeed require jQuery. I’m going to look further into this today hopefully.

  • @phenomlab

    Great man 🙂

    On the default theme. All it’s perfect !!!
    That’s why I thought of a CSS problem. Like a variable that I would have forgotten for example

  • @phenomlab

    Great man 🙂

    On the default theme. All it’s perfect !!!
    That’s why I thought of a CSS problem. Like a variable that I would have forgotten for example

    @downpw Yes, I saw that. Let me know when the server is available and I’ll have a look.

  • On 1 hour

  • On 1 hour

    @downpw I’ve been able to get somewhere near this with the below custom function I’ve written

    	    $(window).on('action:ajaxify.end', function(data) {
    	        // Detect if the theme dropdown has been clicked. If it has, change the color to #000000
    	        $("#switcher").on("click", function() {
    	            $("#switcher i").css("color", "#000000");
    	        });
    	        // Detect if the theme dropdown has lost focus (clicked something else). If it has, change the color to #FFFFFF
    	        $("#switcher").on("focusout", function() {
    	            $("#switcher i").css("color", "#ffffff");
    	        });
    	    });
    

    Test it and let me know ? I’ve already added it, so you don’t need to do anything.

  • @phenomlab

    It seems to be better when dropdown 😉
    But when I lost focus, sometimes the icon don’t back again:

    Example here :
    0029c6f2-ae59-48ff-82a7-97e7e92fdb2d-image.png

    EDIT : see, I have recorded a gif

    The problem came on default theme too but it’s normal because it’s a javascript for all the site

    5c31ab54-4d9d-4183-8e97-80abd0850527-image.png https://imgur.com/a/2oSdcC3

  • @phenomlab

    It seems to be better when dropdown 😉
    But when I lost focus, sometimes the icon don’t back again:

    Example here :
    0029c6f2-ae59-48ff-82a7-97e7e92fdb2d-image.png

    EDIT : see, I have recorded a gif

    The problem came on default theme too but it’s normal because it’s a javascript for all the site

    5c31ab54-4d9d-4183-8e97-80abd0850527-image.png https://imgur.com/a/2oSdcC3

    @downpw thanks. Might need some tweaking to get it 100% but it’s a start. Will have a more detailed look at this as time permits. I’m back at work as of Monday ☺

  • @downpw thanks. Might need some tweaking to get it 100% but it’s a start. Will have a more detailed look at this as time permits. I’m back at work as of Monday ☺

    @phenomlab Of course it is a very good basis for work.

  • @phenomlab Of course it is a very good basis for work.

    @downpw Small modification to address the default theme icon bug (displayed white when focus lost, when it should be black)

    // Bugfix theme switcher button when dropdown / Focus / Not focus
    $(window).on('action:ajaxify.end', function(data) {
        var whichTheme = localStorage.getItem("theme");
        if (whichTheme === '') {
            // Assume default theme and set icon color to #000000
            $("#switcher i").css("color", "#000000");
        }
        if (whichTheme !== '') {
            // Assume color theme and set icon color to #ffffff
            $("#switcher i").css("color", "#ffffff");
        }
        // Detect if the theme dropdown has been clicked. If it has, change the color to #000000
        $("#switcher").on("click", function() {
            $("#switcher i").css("color", "#000000");
        });
        // Detect if the theme dropdown has lost focus (clicked something else). If it has, change the color to #FFFFFF
        $("#switcher").on("focusout", function() {
            $("#switcher i").css("color", "#ffffff");
        });
    });
    

    Active now, and should also address the other bug you mentioned.

  • @downpw Small modification to address the default theme icon bug (displayed white when focus lost, when it should be black)

    // Bugfix theme switcher button when dropdown / Focus / Not focus
    $(window).on('action:ajaxify.end', function(data) {
        var whichTheme = localStorage.getItem("theme");
        if (whichTheme === '') {
            // Assume default theme and set icon color to #000000
            $("#switcher i").css("color", "#000000");
        }
        if (whichTheme !== '') {
            // Assume color theme and set icon color to #ffffff
            $("#switcher i").css("color", "#ffffff");
        }
        // Detect if the theme dropdown has been clicked. If it has, change the color to #000000
        $("#switcher").on("click", function() {
            $("#switcher i").css("color", "#000000");
        });
        // Detect if the theme dropdown has lost focus (clicked something else). If it has, change the color to #FFFFFF
        $("#switcher").on("focusout", function() {
            $("#switcher i").css("color", "#ffffff");
        });
    });
    

    Active now, and should also address the other bug you mentioned.

    @phenomlab

    I have tested but sorry it’s the same problem.

  • @phenomlab

    I have tested but sorry it’s the same problem.

    @downpw Can you reload the page and try again.

  • Yeah i delete cache and Ctrl + F5

    The problem come when I don’t click on fa-fw but background.

    Like this :

    95b7fce2-8708-4e32-bdb9-6fbd107ddb5c-image.png

    On fa-fw = No problem

  • Yeah i delete cache and Ctrl + F5

    The problem come when I don’t click on fa-fw but background.

    Like this :

    95b7fce2-8708-4e32-bdb9-6fbd107ddb5c-image.png

    On fa-fw = No problem

    @downpw Ok, do the default theme issue is fixed, but you still see the white icon when clicking the background and not the icon itself ?

  • Yeah i delete cache and Ctrl + F5

    The problem come when I don’t click on fa-fw but background.

    Like this :

    95b7fce2-8708-4e32-bdb9-6fbd107ddb5c-image.png

    On fa-fw = No problem

    @downpw Try now

  • nope it’s the same even on fa-fw and default theme

    but as you are connected you have to see it.

  • nope it’s the same even on fa-fw and default theme

    but as you are connected you have to see it.

    @downpw Right. I think I finally have this working 🙂

    I’ve added this into your global CSS - don’t delete it

    .themeon {
        color: #000000 !important;
    }
    .themeoff {
        color: #ffffff !important;
    }
    

    Final modified JS

    // Bugfix theme switcher button when dropdown / Focus / Not focus
    	$(document).ready(function () {
    	// First, detect which theme is in use
        var whichTheme = localStorage.getItem("theme");
        // Is the target dropdown expanded ? Use aria-expanded for this as it populates into the DOM on change making it easier to work with. 
        // If it is expanded, then we set the icon to WHITE with CSS class "themeon"
          if ($('#theme_dropdown').attr('aria-expanded') === "true") {
             $("#switcher i").addClass("themeon");
          }
        // If it is collapsed, then we set the icon to BLACK with CSS class "themeoff"
          if ($('#theme_dropdown').attr('aria-expanded') === "false") {
             $("#switcher i").addClass("themeoff");
          }
          // If we are using the default theme, deploy CSS "themeoff" and set the icon to BLACK
              if (whichTheme === '') {
          // If no other matches, assume the default theme, deploy CSS "themeoff" and set the icon to BLACK
             $("#switcher i").removeClass("themeoff");
        }
    });
    

    According to my testing, this works 🙂


Did this solution help you?
Did you find the suggested solution useful? Support 💗 Sudonix with a coffee
If your organisation needs deeper expertise around infrastructure, security, or technology leadership, learn more about Phenomlab Ltd. Many of the deeper technical guides behind Sudonix are published there.

Related Topics
  • The theme came with space on left side

    Solved WordPress css
    7
    3 Votes
    7 Posts
    1k Views
    @phenomlab yes it’s a different theme. The other one was not offering much on editable sidebar. It was like flarum hahah
  • Fixing YouTube videos css

    Solved WordPress css
    8
    2 Votes
    8 Posts
    1k Views
    @phenomlab It looks good, but not anymore. I’ve already lost so much time. Now it’s time to move on
  • Post Style View

    Solved Customisation post style sudonix nodebb
    67
    2
    18 Votes
    67 Posts
    16k Views
    @cagatay Just add margin-left on the element like @phenomlab said to you : topic [component="post/parent"] { margin-left: 10px; } [image: 1669191112290-aa08c62b-4223-4cba-8c0f-c73d50474c0d-image.png] Maybe @phenomlab have a better way
  • chat list navbar

    Solved Customisation css navbar chat menu
    30
    2
    3 Votes
    30 Posts
    6k Views
    No no it’s ok @phenomlab I just comment the 2 lines mentionned aboves
  • Avatar on Topic Header

    Solved Customisation css avatar header
    9
    1
    0 Votes
    9 Posts
    2k Views
    @jac said in Avatar on Topic Header: @downpw said in Avatar on Topic Header: Great Plugin I make it a bit cleaner via this CSS code: /*------------------------------------------------------------------*/ /*---------------- nodebb-plugin-browsing-users -----------------*/ /*------------------------------------------------------------------*/ /*Space between the avatar and the RSS icon */ .topic [component="topic/browsing-users"] { margin-bottom: -5px; padding-left: 10px; } /*Space between avatars*/ .pull-left { float: left!important; padding-right: 5px; } Do you have a screenshot of how this looks with the CSS change? Just added this change, thanks @DownPW
  • NodeBB Footer

    Solved Customisation footer nodebb
    10
    1 Votes
    10 Posts
    2k Views
    @phenomlab said in NodeBB Footer: @jac and you. Hope all is well and you recover quickly Thanks pal
  • Social icon (Nodebb)

    Solved Customisation nodebb social
    7
    0 Votes
    7 Posts
    2k Views
    @phenomlab said in Social icon (Nodebb): @jac I just tested my theory around using the OG image, and according to the Twitter card validator, it works fine [image: 1638880098289-73e805e1-997b-41bf-9259-51c5052ca8fc-image.png] fixed
  • How to set a signature in NodeBB?

    Solved Customisation
    4
    2 Votes
    4 Posts
    1k Views
    @phenomlab said in How to set a signature in NodeBB?: @jac No issues at all with copying. This is set using the signature for the user you are posting as. In the case of Hostrisk, it’s set like the below [image: 1633427929198-7bf04183-f6e8-4d72-b0eb-c9a05c9cd24b-image.png] You can set the signature by using https://domain.com/user/theuser/edit Mamy thanks Mark, I’ll set this up later .