Skip to content

[NODEBB] CSS Style Sheets SelectBox

Locked Solved Customisation
112 2 32.9k 1
  • OK Thanks.
    You have change id="user_dropdown with id=โ€œtheme_dropdownโ€

    Can you will see for others problem after?

    @downpw Iโ€™m running low on free time now sadly, but more then happy to get this resolved for you tomorrow or later in the week of that works for you.

    The issue here is that Iโ€™ve reused some of the existing code from NodeBB and that may be causing some issues. Donโ€™t worry. Weโ€™ll get there ๐Ÿ‘

  • @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    @downpw Iโ€™m running low on free time now sadly, but more then happy to get this resolved for you tomorrow or later in the week of that works for you.
    The issue here is that Iโ€™ve reused some of the existing code from NodeBB and that may be causing some issues. Donโ€™t worry. Weโ€™ll get there

    OK Thanks sir ๐Ÿ™‚
    I really hope ! You are a super hero !

    I also hope that when done this will work on future nodeBB updates/upgrade.
    PM me when you have the time for that I turn on the VM

  • @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    @downpw Iโ€™m running low on free time now sadly, but more then happy to get this resolved for you tomorrow or later in the week of that works for you.
    The issue here is that Iโ€™ve reused some of the existing code from NodeBB and that may be causing some issues. Donโ€™t worry. Weโ€™ll get there

    OK Thanks sir ๐Ÿ™‚
    I really hope ! You are a super hero !

    I also hope that when done this will work on future nodeBB updates/upgrade.
    PM me when you have the time for that I turn on the VM

    @downpw no issues. Itโ€™ll work across upgrades as itโ€™s a standard function and doesnโ€™t rely on any NodeBB components. If you can just ensure that the VM is available around the same time each day, that would also help.

  • @downpw no issues. Itโ€™ll work across upgrades as itโ€™s a standard function and doesnโ€™t rely on any NodeBB components. If you can just ensure that the VM is available around the same time each day, that would also help.

    @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    If you can just ensure that the VM is available around the same time each day, that would also help.

    Ok no problem Sir ๐Ÿ˜‰

  • @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    If you can just ensure that the VM is available around the same time each day, that would also help.

    Ok no problem Sir ๐Ÿ˜‰

    @downpw Right. I think I have this working the way youโ€™d like

    9178fb7a-04b8-4b34-95cd-6bf47d8b368a-image.png

    This uses the below CSS I have placed into your ACP. It should not be deleted

    // PLEASE DO NOT DELETE THIS
    
    .header #theme_dropdown {
        padding: 9px 15px;
        padding-top: 9px;
        padding-bottom: 9px;
        margin-top: -4px;
        padding-top: 14px;
        padding-bottom: 16px;
    }
    #switcher{
        position: absolute;
        right: 33%;
    }
    

    The :hover class is always going to look like the below

    07a054c4-57bd-4817-8823-785116ed97b6-image.png

    The reason for this is because you have it hard coded in the ACP CSS as below

    /*VIOLENCE: Couleur du background au survol souris */
    .navbar-default .navbar-nav>li>label:hover {
        background: #555555;
    }
    

    You should remove this, and set it based on the color you want in each external CSS file. This way, it will display correctly.

    The slight caveat with this is that it has to use absolute positioning meaning that if you resize the browser, the theme switcher icon will use a percentage to work out where it needs to be, and wonโ€™t be governed by the <ul><li> it sits inside. This is the only way to get the effect you are looking for.

  • @downpw Right. I think I have this working the way youโ€™d like

    9178fb7a-04b8-4b34-95cd-6bf47d8b368a-image.png

    This uses the below CSS I have placed into your ACP. It should not be deleted

    // PLEASE DO NOT DELETE THIS
    
    .header #theme_dropdown {
        padding: 9px 15px;
        padding-top: 9px;
        padding-bottom: 9px;
        margin-top: -4px;
        padding-top: 14px;
        padding-bottom: 16px;
    }
    #switcher{
        position: absolute;
        right: 33%;
    }
    

    The :hover class is always going to look like the below

    07a054c4-57bd-4817-8823-785116ed97b6-image.png

    The reason for this is because you have it hard coded in the ACP CSS as below

    /*VIOLENCE: Couleur du background au survol souris */
    .navbar-default .navbar-nav>li>label:hover {
        background: #555555;
    }
    

    You should remove this, and set it based on the color you want in each external CSS file. This way, it will display correctly.

    The slight caveat with this is that it has to use absolute positioning meaning that if you resize the browser, the theme switcher icon will use a percentage to work out where it needs to be, and wonโ€™t be governed by the <ul><li> it sits inside. This is the only way to get the effect you are looking for.

    @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    @downpw Right. I think I have this working the way youโ€™d like

    9178fb7a-04b8-4b34-95cd-6bf47d8b368a-image.png

    This uses the below CSS I have placed into your ACP. It should not be deleted

    // PLEASE DO NOT DELETE THIS
    
    .header #theme_dropdown {
        padding: 9px 15px;
        padding-top: 9px;
        padding-bottom: 9px;
        margin-top: -4px;
        padding-top: 14px;
        padding-bottom: 16px;
    }
    #switcher{
        position: absolute;
        right: 33%;
    }
    

    The :hover class is always going to look like the below

    07a054c4-57bd-4817-8823-785116ed97b6-image.png

    The reason for this is because you have it hard coded in the ACP CSS as below

    /*VIOLENCE: Couleur du background au survol souris */
    .navbar-default .navbar-nav>li>label:hover {
        background: #555555;
    }
    

    You should remove this, and set it based on the color you want in each external CSS file. This way, it will display correctly.

    The slight caveat with this is that it has to use absolute positioning meaning that if you resize the browser, the theme switcher icon will use a percentage to work out where it needs to be, and wonโ€™t be governed by the <ul><li> it sits inside. This is the only way to get the effect you are looking for.

    Hmmm, itโ€™s problematic. Itโ€™s not very aesthetic.
    I am amazed because it works very well on your site or with night mode.
    7b6a5a8e-ed62-4396-9872-1f183153bf10-image.png

    I see red background too on fa -faw ???
    94c88d8c-1cc2-4e49-9f3f-024b2aec1898-image.png

  • @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    @downpw Right. I think I have this working the way youโ€™d like

    9178fb7a-04b8-4b34-95cd-6bf47d8b368a-image.png

    This uses the below CSS I have placed into your ACP. It should not be deleted

    // PLEASE DO NOT DELETE THIS
    
    .header #theme_dropdown {
        padding: 9px 15px;
        padding-top: 9px;
        padding-bottom: 9px;
        margin-top: -4px;
        padding-top: 14px;
        padding-bottom: 16px;
    }
    #switcher{
        position: absolute;
        right: 33%;
    }
    

    The :hover class is always going to look like the below

    07a054c4-57bd-4817-8823-785116ed97b6-image.png

    The reason for this is because you have it hard coded in the ACP CSS as below

    /*VIOLENCE: Couleur du background au survol souris */
    .navbar-default .navbar-nav>li>label:hover {
        background: #555555;
    }
    

    You should remove this, and set it based on the color you want in each external CSS file. This way, it will display correctly.

    The slight caveat with this is that it has to use absolute positioning meaning that if you resize the browser, the theme switcher icon will use a percentage to work out where it needs to be, and wonโ€™t be governed by the <ul><li> it sits inside. This is the only way to get the effect you are looking for.

    Hmmm, itโ€™s problematic. Itโ€™s not very aesthetic.
    I am amazed because it works very well on your site or with night mode.
    7b6a5a8e-ed62-4396-9872-1f183153bf10-image.png

    I see red background too on fa -faw ???
    94c88d8c-1cc2-4e49-9f3f-024b2aec1898-image.png

    @downpw said in [NODEBB] CSS Style Sheets SelectBox:

    Hmmm, itโ€™s problematic. Itโ€™s not very aesthetic.
    I am amazed because it works very well on your site or with night mode.

    The theme switcher you have doesnโ€™t work the same way as the night mode plugin. What you have is a dropdown which is not the same as the toggle selection hence it will behave differently.

    What isnโ€™t aesthetic exactly ?

    @downpw said in [NODEBB] CSS Style Sheets SelectBox:

    I see red background too on fa -faw ???

    Yes, that comes from the below class on line 415 of your CSS in the ACP

    /*VIOLENCE: Couleur du background de l'icone de recherche au survol souris */  
    .navbar-default .btn-link:hover {
        background: red;
    }
    
  • @DownPW another wayโ€ฆ

    Remove

    #switcher{
        position: absolute;
        right: 33%;
    }
    

    Add

    .navbar-default {
        height: 50px;
    }
    

    This way, itโ€™s aestheticโ€ฆI just set the changes. Let me know what you think.

  • @DownPW another wayโ€ฆ

    Remove

    #switcher{
        position: absolute;
        right: 33%;
    }
    

    Add

    .navbar-default {
        height: 50px;
    }
    

    This way, itโ€™s aestheticโ€ฆI just set the changes. Let me know what you think.

    @phenomlab

    Itโ€™s better.

    I have just to set space between icon

    For the red, i have disable CSS on line number 415, itโ€™s not that

  • @phenomlab

    Itโ€™s better.

    I have just to set space between icon

    For the red, i have disable CSS on line number 415, itโ€™s not that

    @downpw said in [NODEBB] CSS Style Sheets SelectBox:

    For the red, i have disable CSS on line number 415, itโ€™s not that

    Odd. This will stop it

    #switcher .btn-link:hover {
        background: none !important;
    }
    
  • Yeah Itโ€™s good

  • Yeah Itโ€™s good

    @downpw Great. I think weโ€™re done, yes ?

  • Hmm I search to reducs space between Icon search bar and notification icon

  • Hmm I search to reducs space between Icon search bar and notification icon

    @downpw Can you provide a screenshot to explain what you are looking for ?

  • off course @phenomlab
    I search to reducs space between Icon search bar and notification icon

    4c1df3fb-ffe3-4097-b058-f6fd7011f679-image.png

  • off course @phenomlab
    I search to reducs space between Icon search bar and notification icon

    4c1df3fb-ffe3-4097-b058-f6fd7011f679-image.png

    @downpw Try

    #switcher {
        margin-right: -15px;
        margin-left: -15px;
    }
  • @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    #switcher {
    margin-right: -15px;
    margin-left: -15px;
    }

    Yes very Good !!!
    Like this The button is well : Thanks

    baaaa269-6f3e-4a51-acc6-b05138b51349-image.png

  • @phenomlab said in [NODEBB] CSS Style Sheets SelectBox:

    #switcher {
    margin-right: -15px;
    margin-left: -15px;
    }

    Yes very Good !!!
    Like this The button is well : Thanks

    baaaa269-6f3e-4a51-acc6-b05138b51349-image.png

    @downpw

    Right. I moved the custom HTML to a HTML based global widget, and that works ๐Ÿ™‚ Give it a try

    Also, not sure why you are using the html class for the background images. You should use body. I just tried it, and it works fine

  • @DownPW some additional advice. The images you are calling remotely should be hosted on your own server. This will prevent unnecessary remote calls, and will also load faster. Iโ€™m seeing delay times of up to a second before the wallpaper appears ๐Ÿ™‚

  • @phenomlab

    Ok if I understood, I canโ€™t use custom ACP Header for HTML code. I must use an HTML widgets.

    For background, I use the code on NodeBB forum but if you have a code working great on desktop and mobile. II want it a lot
    ๐Ÿ™‚


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
  • Widget | CSS customization

    Solved WordPress css
    53
    17 Votes
    53 Posts
    9k Views
    @Sala the only way you can achieve this is to use a robots.txt file and disallow access to those links.
  • 5 Votes
    2 Posts
    1k Views
    Nice. Very good tips Mark
  • hover link effect

    Solved Customisation css link hover
    18
    1
    6 Votes
    18 Posts
    3k Views
    @DownPW Looking at the underlying code, class start is being added on hover by jQuery in this function document.querySelectorAll(".button-gradient, .button-transparent").forEach((button) => { const style = getComputedStyle(button); const lines = document.createElement("div"); lines.classList.add("lines"); const groupTop = document.createElement("div"); const groupBottom = document.createElement("div"); const svg = createSVG( button.offsetWidth, button.offsetHeight, parseInt(style.borderRadius, 10) ); groupTop.appendChild(svg); groupTop.appendChild(svg.cloneNode(true)); groupTop.appendChild(svg.cloneNode(true)); groupTop.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); lines.appendChild(groupTop); lines.appendChild(groupBottom); button.appendChild(lines); button.addEventListener("pointerenter", () => { button.classList.add("start"); }); svg.addEventListener("animationend", () => { button.classList.remove("start"); }); }); }) The CSS for start is below .button-gradient.start .lines svg, .button-transparent.start .lines svg { animation: stroke 0.3s linear; } And this is the corresponding keyframe @keyframes stroke { 30%, 55% { opacity: 1; } 100% { stroke-dashoffset: 5; opacity: 0; } } Itโ€™s using both CSS and SVG, so might not be a simple affair to replicate without the SVG files.
  • 9 Votes
    32 Posts
    8k Views
    @DownPW said in Bottom footer navbar button extend: Oh my god, itโ€™s beautiful mark I liked this design so much, Iโ€™ve implemented it here. I intend to do a lot more with the footer in due course, so hiding it makes a lot of sense. Thanks @DownPW for the idea and initial concept
  • [NODEBB] Help for my custom CSS

    Solved Customisation nodebb css bugfix
    237
    49 Votes
    237 Posts
    80k Views
    @baris said: You should change your selectors so it doesnโ€™t look at the entire document. You probably only want to apply fancybox to stuff inside the #content element which is what changes when the user navigates around the page. So use $('#content a').... for your selectors then the forum logo in the header wonโ€™t be selected. I modified the JS Fancybox code now and this code and it seem better // --------------------------------------------- // Fancybox Media Reader (Without Website Logo) // --------------------------------------------- if (top.location.pathname !== '/login') { $(window).on('action:posts.loaded', function(data) { console.log("Polling DOM for lazyLoaded images to apply Fancybox"); $(document).ready(function() { $('#content a').not('.forum-logo').not(".avatar").not(".emoji").not(".bmac-noanimate").each(function() { $('#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]').addClass("noanimate"); }); }); }); } if (top.location.pathname !== '/login') { $(document).ready(function() { $(window).on('action:ajaxify.end', function(data) { $('#content a').not('.logo').not(".avatar").not(".emoji").not(".bmac-noanimate").each(function() { $('#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]').addClass("noanimate"); data.preventDefault() // Strip out the images contained inside blockquotes as this looks nasty :) $('#content blockquote img').remove(); }); Fancybox.bind( '#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]', { groupAll: true, } ); }); }); } // Chat fancybox - fires when chat module loaded and AJAX calls new chat $(document).ready(function() { $(window).on('action:chat.loaded', function(data) { // >>> Se limiter au contenu principal uniquement <<< $('#content img').not('.forum-logo').not(".avatar").not(".emoji").not(".bmac-noanimate").each(function() { var newHref = $(this).attr("src"); $(this).wrap("<a class='fancybox' href='" + newHref + "'/>"); $('#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]').addClass("noanimate"); data.preventDefault(); // Strip out the images contained inside blockquotes as this looks nasty :) $('#content blockquote img').remove(); }); Fancybox.bind( '#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]', { groupAll: true, } ); }); }); For the logo, I must use overflow: visible !important; on [component="brand/logo"] /* --- Logo --- */ [component="brand/logo"] { max-height: 50px; width: auto; height: auto; max-width: 100%; display: block; object-fit: contain; object-position: left center; overflow: visible !important; } Better result !!
  • NodeBB Design help

    Solved Customisation
    8
    3
    2 Votes
    8 Posts
    2k Views
    @riekmedia Iโ€™ve applied some new CSS to your site. Can you reload the page and try again ? For the record, this is what I added #footer { background: #2d343e; border-top: 4px solid #2d343e; font-size: 0.9em; margin-top: 70px; padding: 80px 0 0; position: relative; clear: both; bottom: 0; left: 0; right: 0; z-index: 1000; margin-left: -15px; margin-right: -338px; } The /categories page seems a bit messed up, so looking at that currently EDIT - issued some override CSS in the CATEGORIES widget <!--- CSS fix for overspill on /categories page - DO NOT DELETE --> <style> #footer { margin-right: -45px; } </style> That should resolve the /categories issue.
  • Customising NodeBB

    Locked Customisation nodebb
    3
    0 Votes
    3 Posts
    2k Views
    Closing this thread as a duplicate of https://sudonix.com/topic/12/nodebb-customisation
  • NodeBB customisation

    Locked Customisation
    332
    27 Votes
    332 Posts
    134k Views
    @jac Given your departure away from your previous project, Iโ€™m going to close this threadโ€ฆ