Skip to content

Footer bar add center text

Solved Customisation
41 2 9.1k 1
  • Ok the code I provided above is the same as my website. But do like you want my friends if you prefer 😉

    @DownPW I thought it looked familiar. When I checked yesterday the central text part was missing, so I’ll add that via the console and develop from there. This will only be visible for my browser session so no impact to anyone else.

  • Ok the code I provided above is the same as my website. But do like you want my friends if you prefer 😉

    @DownPW I see the issue. Use my CSS still, but from your CSS, remove

    #floatright {
        display: flex;
    }
    

    You should land up with

    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: 0 auto;
        text-align: center;
        width: 50%;
    }
    

    b37d32dd-873a-4817-8da5-4411d2ebea74-image.png

  • @DownPW I see the issue. Use my CSS still, but from your CSS, remove

    #floatright {
        display: flex;
    }
    

    You should land up with

    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: 0 auto;
        text-align: center;
        width: 50%;
    }
    

    b37d32dd-873a-4817-8da5-4411d2ebea74-image.png

    @phenomlab

    Nope same problem with :

    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: 0 auto;
        text-align: center;
        width: 50%;
    }
    
    .textcenter {
        margin-left: auto;
        margin-right: auto;
        font-weight: 800 !important;
    }
    
    
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        /*display: flex;*/
    }
    
  • @phenomlab

    Nope same problem with :

    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: 0 auto;
        text-align: center;
        width: 50%;
    }
    
    .textcenter {
        margin-left: auto;
        margin-right: auto;
        font-weight: 800 !important;
    }
    
    
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        /*display: flex;*/
    }
    

    @DownPW try with

    display: inherit;
    
  • @DownPW try with

    display: inherit;
    

    @phenomlab On floatright ?

  • @phenomlab On floatright ?

    @DownPW Test in floatright = same result

  • @DownPW Test in floatright = same result

    @DownPW sorry. Try either

    display: inline;
    

    Or

    display: inline-block;
    

    You might need !important depending on cascading settings

    Edit - for clarity, this should be in the #floatcenter block

  • @DownPW sorry. Try either

    display: inline;
    

    Or

    display: inline-block;
    

    You might need !important depending on cascading settings

    Edit - for clarity, this should be in the #floatcenter block

    @phenomlab

    Houra, it’s OK with inline-block

    On the other hand, I see that the text is well centered in the div but I notice that the div itself is not centered.
    Indeed I see a substantial space between the floatcenter div and floatright div.
    You can see it in the screenshot below.

    e1fb1c73-e19d-4548-aa73-9f8456830018-image.png

    Again my HTML/CSS

    <div id="floatcenter"> Some centered text
        </div>
    
    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: auto auto;
        text-align: center;
        width: 50%;
        display: inline-block !important;
    }
    
  • @phenomlab

    Houra, it’s OK with inline-block

    On the other hand, I see that the text is well centered in the div but I notice that the div itself is not centered.
    Indeed I see a substantial space between the floatcenter div and floatright div.
    You can see it in the screenshot below.

    e1fb1c73-e19d-4548-aa73-9f8456830018-image.png

    Again my HTML/CSS

    <div id="floatcenter"> Some centered text
        </div>
    
    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: auto auto;
        text-align: center;
        width: 50%;
        display: inline-block !important;
    }
    

    @DownPW strange. I don’t recall seeing that issue when I created this using the console live on your site. This is likely due to width constraints on the parent div.

    In the above CSS you could try to set width to auto rather than 50%, but then you will need to set width: 100%; on the parent div

  • @DownPW strange. I don’t recall seeing that issue when I created this using the console live on your site. This is likely due to width constraints on the parent div.

    In the above CSS you could try to set width to auto rather than 50%, but then you will need to set width: 100%; on the parent div

    @phenomlab

    I have test with width: 50%;, I have the floatright OK with not space like before but the text is not centered.

    4ff9abbf-889c-42ac-9202-3dd1465eb0c7-image.png

  • @phenomlab

    I have test with width: 50%;, I have the floatright OK with not space like before but the text is not centered.

    4ff9abbf-889c-42ac-9202-3dd1465eb0c7-image.png

    @DownPW ok. Let me have a look at this later. Can you leave everything as it is - I know it doesn’t look right but I want to make sure the right css is provided for the html you are using and it’s easier to do this live.

    Perhaps set the floatcenter element to be hidden for the time being?

  • @DownPW ok. Let me have a look at this later. Can you leave everything as it is - I know it doesn’t look right but I want to make sure the right css is provided for the html you are using and it’s easier to do this live.

    Perhaps set the floatcenter element to be hidden for the time being?

    @phenomlab

    Yep I will set display: none on floatcenter div for waiting

    I notice I can centered the text when I play with margin-left for example but is not auto-centered according to the text

    It’s still better but I would like it to center automatically based on the text rather than manually.

    we will get there

  • @phenomlab

    Yep I will set display: none on floatcenter div for waiting

    I notice I can centered the text when I play with margin-left for example but is not auto-centered according to the text

    It’s still better but I would like it to center automatically based on the text rather than manually.

    we will get there

    @DownPW Ok, try this

    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: 0 auto;
        text-align: center !important;
        max-width: 50%;
    }
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        display: flex;
        position: sticky;
    }
    

    Don’t add to the CSS blocks you have - you need to replace them. This should yield the below - see the position markers - the lilac is centered on the screen, whilst the other two div tags occupy the remainder.

    055d6573-f3d7-41b0-93f3-8bfff20737b4-image.png

    There is a caveat in the sense that this doesn’t scale very well - mostly because of the existing position: fixed; and the need to set position: sticky; on the right-most element of #floatright. Based on this, it would be sensible to hide #floatcenter on the mobile breakpoints to prevent the text from overlapping.

  • @DownPW Ok, try this

    #floatcenter {
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        font-weight: bold;
        color: #666666 !important;
        margin: 0 auto;
        text-align: center !important;
        max-width: 50%;
    }
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        display: flex;
        position: sticky;
    }
    

    Don’t add to the CSS blocks you have - you need to replace them. This should yield the below - see the position markers - the lilac is centered on the screen, whilst the other two div tags occupy the remainder.

    055d6573-f3d7-41b0-93f3-8bfff20737b4-image.png

    There is a caveat in the sense that this doesn’t scale very well - mostly because of the existing position: fixed; and the need to set position: sticky; on the right-most element of #floatright. Based on this, it would be sensible to hide #floatcenter on the mobile breakpoints to prevent the text from overlapping.

    @phenomlab

    Ah ok you play with max-width: 50%; on floatcenter and position: sticky; on floatright

    That’s smart 😉 I didn’t necessarily think of that.


    The result is perfect except on smartphone as you said.

    –> I tried this as usual but it doesn’t work. An idea?

    @media (max-width: 768px) {
        #floatcenter {
            display: none !important;
        }  
    }
    

    EDIT: Yep this code works for not display floatcenter div. I must find for floatright div
    EDIT2: Ok @phenomlab with floatright div with this code :

    @media (max-width: 767px) {
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        display: flex !important;
        position: static;
    } 
    }
    

    If you have a better solution tell me Mark 😉

    A big big thank you bro 👍

  • @phenomlab

    Ah ok you play with max-width: 50%; on floatcenter and position: sticky; on floatright

    That’s smart 😉 I didn’t necessarily think of that.


    The result is perfect except on smartphone as you said.

    –> I tried this as usual but it doesn’t work. An idea?

    @media (max-width: 768px) {
        #floatcenter {
            display: none !important;
        }  
    }
    

    EDIT: Yep this code works for not display floatcenter div. I must find for floatright div
    EDIT2: Ok @phenomlab with floatright div with this code :

    @media (max-width: 767px) {
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        display: flex !important;
        position: static;
    } 
    }
    

    If you have a better solution tell me Mark 😉

    A big big thank you bro 👍

    @DownPW that should work - unless it’s inherited higher up in the cascade. If you resize the browser to match a mobile device, does it appear in the DOM?

  • @phenomlab

    Ah ok you play with max-width: 50%; on floatcenter and position: sticky; on floatright

    That’s smart 😉 I didn’t necessarily think of that.


    The result is perfect except on smartphone as you said.

    –> I tried this as usual but it doesn’t work. An idea?

    @media (max-width: 768px) {
        #floatcenter {
            display: none !important;
        }  
    }
    

    EDIT: Yep this code works for not display floatcenter div. I must find for floatright div
    EDIT2: Ok @phenomlab with floatright div with this code :

    @media (max-width: 767px) {
    #floatright {
        float: right;
        bottom: 1px;
        font-size: 90%;
        line-height: 2.3;
        display: flex !important;
        position: static;
    } 
    }
    

    If you have a better solution tell me Mark 😉

    A big big thank you bro 👍

    @DownPW said in Footer bar add center text:

    If you have a better solution tell me Mark
    A big big thank you bro

    No, that should work and it’s a good mix. Just watch for very large displays as you may get unexpected placing of elements, but I doubt anyone will ever encounter this unless they run their browser using the entire screen estate.

    Highly unlikely I think.

  • @DownPW said in Footer bar add center text:

    If you have a better solution tell me Mark
    A big big thank you bro

    No, that should work and it’s a good mix. Just watch for very large displays as you may get unexpected placing of elements, but I doubt anyone will ever encounter this unless they run their browser using the entire screen estate.

    Highly unlikely I think.

    @phenomlab

    I did the test on my desktop 34-inch screen in browser full screen and it works, then goes on my smartphone. (OnePlus 8T)

    Everything is fine unless I missed something 😉

    I mark as solved 🙂

  • DownPWundefined DownPW has marked this topic as solved on
  • @phenomlab

    I did the test on my desktop 34-inch screen in browser full screen and it works, then goes on my smartphone. (OnePlus 8T)

    Everything is fine unless I missed something 😉

    I mark as solved 🙂

    @DownPW that’s great news. Seems to work on my 32" desktop monitor fine, and also on my OnePlus 9 Pro 😁

  • @DownPW that’s great news. Seems to work on my 32" desktop monitor fine, and also on my OnePlus 9 Pro 😁

    @phenomlab

    very odd, there are a bug :

    –> floatright text is invisible only on Firefox and is OK on chromium browser with the same code ?!

  • @phenomlab

    very odd, there are a bug :

    –> floatright text is invisible only on Firefox and is OK on chromium browser with the same code ?!

    Other bug :

    On home page. I must scroll down to see the footerbar.
    She’s not appear directly


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
  • 1 Votes
    1 Posts
    725 Views
    No one has replied
  • 6 Votes
    15 Posts
    3k Views
    No no, I said that in the sense that he told me it was simple ^^ I was able to see that this was not the case by targeting the elements he had advised me.
  • Issues with Progress Bar on v3

    Solved Customisation
    48
    1
    14 Votes
    48 Posts
    8k Views
    @Panda You could use the below .page-topic .pagination-block.ready { display: none; }
  • Blinking text Effect

    Customisation nodebb text effect css
    3
    5 Votes
    3 Posts
    953 Views
    @phenomlab I love it too @phenomlab said in Blinking text Effect: Has that “broken neon light” look that you see in films. It’s exactly that, kind of old neon signs of bar or pubs a bit cyberpunk too
  • 2 Votes
    10 Posts
    2k Views
    @DownPW We just have to change the cycles automatically according to each period ? Yes, this is by far the safest I think it is possible to achieve the goal, I have already seen this kind of thing on a site without any perf problems. It’s certainly possible, but not without issues or impact to performance (in my view)
  • 5 Votes
    9 Posts
    4k Views
    @phenomlab Very very great Mark Thanks again, It’s perfect now ! –> I share my code that I modified. I’ve added French and English comments. If you see things to change Mark, don’t hesitate. As usual, all the access paths (FA icons, logo) will have to be modified according to your architecture. You can also very well add/remove time slots and change welcome messages to suit your needs. Widgets ACP/HTML Widget Footer Logo <center> <br><br> <img id="thislogo" src="path/to/my/image"> </center> Widget Welcome Message <!-- IF loggedIn --> <div class="getUsername">, <a href="/me"><span class="username"></span></a></div> <!-- ENDIF loggedIn --> CSS – I added the size font-weight: 900; in the CSS because otherwise some FA icon wasn’t displayed correctly and reduce margin : i#thisicon { font-family: "Font Awesome 5 Free"; font-style: normal; margin-right: 8px; font-weight: 900; } .getUsername { padding-top: 20px; text-align: right; } /*Smartphone*/ /*On désactive le message de bienvenue"*/ /*We disable the welcome message"*/ @media all and (max-width: 1024px) { .getUsername { display: none; } } JAVASCRIPT // ------------------------------------------ // Welcome Message avec icône et Footer logo // Welcome Message with icon and Footer logo // ------------------------------------------ $(window).on('action:ajaxify.end', function (data) { //On récupère le username dans le DOM et on l'affiche //We retrieve the username from the DOM and display it function updateUsername() { $('.getUsername .username').text(app.user.username); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', updateUsername); } else { updateUsername(); } //On déclare les variables principales (themessage & thehours) ainsi que les variables secondaires correspondants aux plages horaires //We declare the main variables (themessage & thehours) as well as the secondary variables corresponding to the time slots var thehours = new Date().getHours(); var themessage; var wakeup = ('Good day'); var morning = ('Good morning'); var lunch = ('Bon appétit'); var afternoon = ('Good afternoon'); var drink = ('Cheers'); var evening = ('Good evening'); var night = ('Good night'); var welcome = ('Welcome'); var matched = false; //On peux ici tester le résultat du code en spécifiant une heure (!!!IMPORTANT: Commenter une fois le script testé!!!) //Here we can test the result of the code by specifying a time (!!!IMPORTANT: Comment once the script has been tested!!!) //thehours = 20 //On déclare les plages horaires avec les icones FA et les logos //We declare the time slots with FA icons and logos path if (thehours >= 0 && thehours < 6) { themessage = night; theicon = "fa-solid fa-moon"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 6 && thehours < 8) { themessage = wakeup; theicon = "fa-solid fa-mug-hot"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 8 && thehours < 12) { themessage = morning; theicon = "fa-solid fa-sun"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 12 && thehours < 13) { themessage = lunch; theicon = "fas fa-hamburger"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 13 && thehours < 16) { themessage = afternoon; theicon = "fa-solid fa-sun"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 16 && thehours < 18) { themessage = welcome; theicon = "fa-solid fa-rocket"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 18 && thehours < 19) { themessage = drink; theicon = "fa-solid fa-wine-glass"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 19 && thehours < 20) { themessage = lunch; theicon = "fas fa-pizza-slice"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 20 && thehours < 24) { themessage = evening; theicon = "fa-solid fa-tv"; thelogo = "/assets/customlogo/XXX.png"; } // Si la page active est un topic, on désactive/cache le message de bienvenue // If the active page is a topic, we deactivate/hide the welcome message if (window.location.href.indexOf("topic") > -1) { console.log("This is a topic, so hide the user welcome message"); $('#thisuser').hide(); } // Sinon, on affiche le message en fonction, l'icone FA et son emplacement (prepend) // Otherwise, we display the message in function, the FA icon and its location (prepend) else { $('.getUsername').prepend("<i id='thisicon' class='" + theicon + "'></i>" + themessage); $("#thislogo").attr("src", thelogo); //$('.getUsername').prepend("<img id='thisicon' src='" + thelogo + "'></>" + themessage); } });
  • [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 !!
  • tag icon in front of tags

    Solved Customisation css
    5
    3 Votes
    5 Posts
    1k Views
    @phenomlab said in tag icon in front of tags: @crazycells Are you using Font Awesome Free ? If so, try this span.tag:before { content: "\f02b"; font-family: "Font Awesome 5 Free"; margin-right: 5px; margin-left: 5px; font-weight: 900; } yeap, this worked thanks a lot.