Skip to content

fading in /tags page

Solved Customisation
32 3 10.1k 1
  • hi @phenomlab ,

    I loved how all tags except the selected one fade in /tags page…

    https://sudonix.com/tags

    Screen Shot 2022-06-18 at 9.42.10 PM.png

    can you please share the secret? 😄

  • @crazycells @DownPW here you go…

    /* SIBLING FADE: fade out siblings around a hovered item */
    
    .tag-list { visibility: hidden; }
    /* Prevents :hover from triggering in the gaps between items */
    
    .tag-list > * { visibility: visible; }
    /* Brings the child items back in, even though the parent is `hidden` */
    
    .tag-list > * { transition: opacity 150ms linear 100ms, transform 150ms ease-in-out 100ms; }
    /* Makes the fades smooth with a slight delay to prevent jumps as the mouse moves between items */
    
    .tag-list:hover > * { opacity: 0.4; transform: scale(0.9); }
    /* Fade out all items when the parent is hovered */
    
    .tag-list > *:hover { opacity: 1; transform: scale(1); transition-delay: 0ms, 0ms; }
    /* Fade in the currently hovered item */
    

    This isn’t my creation actually - I stumbled across the below Code Pen and fell in love with it

    https://codepen.io/bytzmura/embed/XWjMPdx?default-tab=css%2Cresult&theme-id=dark

  • ohh yeah good question lol 😉

  • @crazycells @DownPW here you go…

    /* SIBLING FADE: fade out siblings around a hovered item */
    
    .tag-list { visibility: hidden; }
    /* Prevents :hover from triggering in the gaps between items */
    
    .tag-list > * { visibility: visible; }
    /* Brings the child items back in, even though the parent is `hidden` */
    
    .tag-list > * { transition: opacity 150ms linear 100ms, transform 150ms ease-in-out 100ms; }
    /* Makes the fades smooth with a slight delay to prevent jumps as the mouse moves between items */
    
    .tag-list:hover > * { opacity: 0.4; transform: scale(0.9); }
    /* Fade out all items when the parent is hovered */
    
    .tag-list > *:hover { opacity: 1; transform: scale(1); transition-delay: 0ms, 0ms; }
    /* Fade in the currently hovered item */
    

    This isn’t my creation actually - I stumbled across the below Code Pen and fell in love with it

    https://codepen.io/bytzmura/embed/XWjMPdx?default-tab=css%2Cresult&theme-id=dark

  • phenomlabundefined phenomlab has marked this topic as solved on
  • Thanks codepen is a very useful site !

    the spinning logo is codepen two ?

  • Thanks codepen is a very useful site !

    the spinning logo is codepen two ?

    @DownPW said in fading in /tags page:

    the spinning logo is codepen two ?

    No, that’s my own CSS.

  • oo yeah can you provide it because I use this but doesn’t working:

    .header .forum-logo, img.forum-logo.head {
        max-height: 50px;
        width: auto;
        height: 30px;
        margin-top: 9px;
        max-width: 150px;
        min-width: 32px;
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
    }
    
  • oo yeah can you provide it because I use this but doesn’t working:

    .header .forum-logo, img.forum-logo.head {
        max-height: 50px;
        width: auto;
        height: 30px;
        margin-top: 9px;
        max-width: 150px;
        min-width: 32px;
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
    }
    

    @DownPW You’re probably missing this

        @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
    

    Without the keyframes it will not work 🙂

  • @DownPW said in fading in /tags page:

    .header .forum-logo, img.forum-logo.head {
    max-height: 50px;
    width: auto;
    height: 30px;
    margin-top: 9px;
    max-width: 150px;
    min-width: 32px;
    display: inline-block;
    animation-name: rotate180, rotate0;
    animation-duration: 1000ms;
    animation-delay: 0s, 1000ms;
    animation-iteration-count: 1;
    animation-timing-function: linear;
    transition: transform 1000ms ease-in-out;
    }

    like this ? Because I have the effect but just at the refresh page and not on Mouse over

    .header .forum-logo, img.forum-logo.head:hover {
        max-height: 50px;
        width: auto;
        height: 30px;
        margin-top: 9px;
        max-width: 150px;
        min-width: 32px;
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
        
        @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
          
    }
    

    EDIT:

    I have it !!!

    @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
          
    .header .forum-logo:hover {
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
        
       
          
    }
    
  • @DownPW said in fading in /tags page:

    .header .forum-logo, img.forum-logo.head {
    max-height: 50px;
    width: auto;
    height: 30px;
    margin-top: 9px;
    max-width: 150px;
    min-width: 32px;
    display: inline-block;
    animation-name: rotate180, rotate0;
    animation-duration: 1000ms;
    animation-delay: 0s, 1000ms;
    animation-iteration-count: 1;
    animation-timing-function: linear;
    transition: transform 1000ms ease-in-out;
    }

    like this ? Because I have the effect but just at the refresh page and not on Mouse over

    .header .forum-logo, img.forum-logo.head:hover {
        max-height: 50px;
        width: auto;
        height: 30px;
        margin-top: 9px;
        max-width: 150px;
        min-width: 32px;
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
        
        @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
          
    }
    

    EDIT:

    I have it !!!

    @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
          
    .header .forum-logo:hover {
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
        
       
          
    }
    

    @DownPW Yes, that was going to be my solution.

  • @crazycells @DownPW here you go…

    /* SIBLING FADE: fade out siblings around a hovered item */
    
    .tag-list { visibility: hidden; }
    /* Prevents :hover from triggering in the gaps between items */
    
    .tag-list > * { visibility: visible; }
    /* Brings the child items back in, even though the parent is `hidden` */
    
    .tag-list > * { transition: opacity 150ms linear 100ms, transform 150ms ease-in-out 100ms; }
    /* Makes the fades smooth with a slight delay to prevent jumps as the mouse moves between items */
    
    .tag-list:hover > * { opacity: 0.4; transform: scale(0.9); }
    /* Fade out all items when the parent is hovered */
    
    .tag-list > *:hover { opacity: 1; transform: scale(1); transition-delay: 0ms, 0ms; }
    /* Fade in the currently hovered item */
    

    This isn’t my creation actually - I stumbled across the below Code Pen and fell in love with it

    https://codepen.io/bytzmura/embed/XWjMPdx?default-tab=css%2Cresult&theme-id=dark

    @phenomlab thanks for sharing, that looks very cool 👍

  • @DownPW said in fading in /tags page:

    .header .forum-logo, img.forum-logo.head {
    max-height: 50px;
    width: auto;
    height: 30px;
    margin-top: 9px;
    max-width: 150px;
    min-width: 32px;
    display: inline-block;
    animation-name: rotate180, rotate0;
    animation-duration: 1000ms;
    animation-delay: 0s, 1000ms;
    animation-iteration-count: 1;
    animation-timing-function: linear;
    transition: transform 1000ms ease-in-out;
    }

    like this ? Because I have the effect but just at the refresh page and not on Mouse over

    .header .forum-logo, img.forum-logo.head:hover {
        max-height: 50px;
        width: auto;
        height: 30px;
        margin-top: 9px;
        max-width: 150px;
        min-width: 32px;
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
        
        @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
          
    }
    

    EDIT:

    I have it !!!

    @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
          
    .header .forum-logo:hover {
        display: inline-block;
        animation-name: rotate180, rotate0;
        animation-duration: 1000ms;
        animation-delay: 0s, 1000ms;
        animation-iteration-count: 1;
        animation-timing-function: linear;
        transition: transform 1000ms ease-in-out;
        
       
          
    }
    

    @DownPW thanks for the codes, how should we edit it if we want a full turn? and keep turning as long as the mouse is hovered on?

  • @DownPW thanks for the codes, how should we edit it if we want a full turn? and keep turning as long as the mouse is hovered on?

    @crazycells change 180 to 360 on the keyframes and set to time to infinite on the animation, so an example would be

    animation-iteration-count: infinite;
    

    Don’t do this on mobile devices though as performance will be greatly impacted.

  • @crazycells change 180 to 360 on the keyframes and set to time to infinite on the animation, so an example would be

    animation-iteration-count: infinite;
    

    Don’t do this on mobile devices though as performance will be greatly impacted.

    @phenomlab thanks 👍

  • hmmm

    Strange with the code I put above, as soon as I remove the mouse pointer from the logo, it returns to it’s original place and it cuts the animation.

    How can we let the animation end even if we remove the mouse pointer from the logo ?

  • @phenomlab

    Example here of the problem

    https://i.imgur.com/jI2vlrF.mp4

  • hmmm

    Strange with the code I put above, as soon as I remove the mouse pointer from the logo, it returns to it’s original place and it cuts the animation.

    How can we let the animation end even if we remove the mouse pointer from the logo ?

    @DownPW said in fading in /tags page:

    as soon as I remove the mouse pointer from the logo, it returns to it’s original place and it cuts the animation.

    Yes, that’s expected because you have the css set for hover state meaning once you remove that state, the animation will stop 😁

    You need to refactor the css to achieve the effect the looking for. Personally, I wouldn’t go for a constantly spinning logo. If you’re as old as I am, you’ll recall this being a thing in Internet Explorer 4 with the spinning globe on the right that was a constant presence and quite a distraction.

    I also wouldn’t do this on any mobile devices as it can severely degrade the browser performance.

  • @DownPW said in fading in /tags page:

    as soon as I remove the mouse pointer from the logo, it returns to it’s original place and it cuts the animation.

    Yes, that’s expected because you have the css set for hover state meaning once you remove that state, the animation will stop 😁

    You need to refactor the css to achieve the effect the looking for. Personally, I wouldn’t go for a constantly spinning logo. If you’re as old as I am, you’ll recall this being a thing in Internet Explorer 4 with the spinning globe on the right that was a constant presence and quite a distraction.

    I also wouldn’t do this on any mobile devices as it can severely degrade the browser performance.

    @phenomlab

    no no my god, not constantly animation !!

    If I hover over the logo, the animation triggers as currently, continues and ends even if I remove the mouse from the logo.

    That’s what’s happening here on Sudonix.

  • @phenomlab

    no no my god, not constantly animation !!

    If I hover over the logo, the animation triggers as currently, continues and ends even if I remove the mouse from the logo.

    That’s what’s happening here on Sudonix.

    @DownPW I see what you mean. The reason for this is that you are calling both rotate180 and rotate0 which are two separate effects.

       animation-name: rotate180, rotate0;
    

    You could remove rotate0 from this section and that will stop the animation as soon as the mouseLeave event is triggered in the DOM (in other words, as soon as you remove the hover)

       animation-name: rotate180;
    
  • hmm not work

    can you provide your CSS code and keyframe for I see it ?
    On sudonix, the animation stop and restart when we leave the mouse over.

  • hmm not work

    can you provide your CSS code and keyframe for I see it ?
    On sudonix, the animation stop and restart when we leave the mouse over.

    @DownPW it’s here
    https://sudonix.com/post/3590

    The exact CSS I have here is

    @keyframes rotate180 {
            from {
              transform: rotate(0deg);
            }
           
            to {
              transform: rotate(180deg);
            }
          }
           
          @keyframes rotate0 {
            from {
              transform: rotate(180deg);
            }
           
            to {
              transform: rotate(0deg);
            }
          }
        .forum-logo:hover {
            transform: rotate(180deg);
        }
        .hover {
            transform: rotate(180deg);
        }
  • phenomlabundefined phenomlab forked this topic on

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
  • What plugins are being used here on Sudonix?

    Solved General nodebb plugins development
    6
    5 Votes
    6 Posts
    2k Views
    @Roki-Antic Welcome! This site isn’t running Persona, but Harmony - a very heavily customised version at that. Do you have a URL where your site is currently located that is publicly accessible? Feel free to PM this info if you do not want to disclose here. Happy to help with any customisation needs.
  • navigation menu panel on mobile

    Solved Customisation nodebb css
    8
    1
    7 Votes
    8 Posts
    2k Views
    @crazycells hmm. That’s odd. I haven’t made any changes from recollection but I could be wrong. I’ll need to check. EDIT - very strange. I honestly don’t recall adding the below CSS block to alter the bottom bar, but you’re right… .bottombar-nav { padding: 0px !important; } I’ve removed this so it reflects stock Harmony.
  • nodebb-plugin-custom-pages

    Solved Customisation plugin custom-pages
    5
    2
    3 Votes
    5 Posts
    4k Views
    @DownPW it’s possible, yes, but you may inadvertently end up targeting other elements using the same class which of course isn’t desired. Can you provide a link in DM for me to review?
  • 14 Votes
    69 Posts
    46k Views
    @phenomlab Seems to be better with some scaling fix for redis on redis.conf. I haven’t seen the message yet since the changes I made # I increase it to the value of /proc/sys/net/core/somaxconn tcp-backlog 4096 # I'm uncommenting because it can slow down Redis. Uncommented by default !!!!!!!!!!!!!!!!!!! #save 900 1 #save 300 10 #save 60 10000 If you have other Redis optimizations. I take all your advice https://severalnines.com/blog/performance-tuning-redis/
  • Changing Background on NodeBB

    Solved Customisation background image nodebb
    4
    0 Votes
    4 Posts
    2k Views
    @cagatay You’d target the body tag and use the below line of CSS background: url(/assets/customcss/backgrounds/default/default.png) no-repeat center center fixed; Obviously, you need to change the path to suit where your image is being stored. More info around the background property can be found here https://www.w3schools.com/cssref/css3_pr_background.php
  • what does sound/mute button do?

    Solved Customisation nodebb
    20
    1
    9 Votes
    20 Posts
    4k Views
    @crazycells Yeah, looking at the plugin itself, that’s a hard coded limit [image: 1653494282106-3d6dbc10-185b-4102-9470-0c2731a10750-image.png] I’ll probably remove that… eventually…
  • tag icon in front of tags

    Solved Customisation css
    5
    3 Votes
    5 Posts
    2k 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.
  • Iframely (Nodebb)

    Solved Configure
    40
    4 Votes
    40 Posts
    11k Views
    @DownPW This is now resolved. The issue was an incorrect URL specified in the Nodebb plugin. I’ve corrected this, and now it works as intended.