Skip to content

fading in /tags page

Solved Customisation
32 3 7.2k 1
  • @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
  • The tags page looked better before, it does not look good when it is very “ordered”. @phenomlab do you have any intention to change that page in harmony thema?

  • The tags page looked better before, it does not look good when it is very “ordered”. @phenomlab do you have any intention to change that page in harmony thema?

    @crazycells I must admit, I’ve neglected the tags page somewhat, but I do agree with you - it’s pretty dull and could do with some magic.

  • The tags page looked better before, it does not look good when it is very “ordered”. @phenomlab do you have any intention to change that page in harmony thema?

    @crazycells just for you…

    63332828.jpg

  • @crazycells just for you…

    63332828.jpg

    @phenomlab nice 😄 this looks very good…

    On a side note, I have been just watching/listening Doc and Marty’s adventures in the background and then I see this 🤣

    Back To GIF

  • @phenomlab can you please share the CSS codes?

  • @phenomlab can you please share the CSS codes?

    @crazycells Of course… You did ask me for these 🙂

    .tags:not([component="topic/tags"]) a[href*="/tags/"] {
        border: 1px solid var(--bs-border-color);
        border-radius: 0.375rem;
        margin: 8px;
        width: 145px;
        background: var(--bs-body-navbar);
    }
    /* 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 */
    
    .tags a[href*="/tags/"] .tag-item {
        border-bottom: 4px solid var(--bs-border-color) !important;
    }
    
  • And the magic happens 🙂

    Same effect as on the V2 but I love it ^^

    Magic Unicorn GIF


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
  • Page control arrows for PWA

    Solved Customisation nodebb
    27
    25 Votes
    27 Posts
    8k Views
    @crazycells it is, yes - I think I’ll leave it as there is no specific PWA CSS classes I know of. Well, you could use something like the below, but this means multiple CSS files for different operating systems. /** * Determine the mobile operating system. * This function returns one of 'iOS', 'Android', 'Windows Phone', or 'unknown'. * * @returns {String} */ function getMobileOperatingSystem() { var userAgent = navigator.userAgent || navigator.vendor || window.opera; // Windows Phone must come first because its UA also contains "Android" if (/windows phone/i.test(userAgent)) { return "Windows Phone"; } if (/android/i.test(userAgent)) { return "Android"; } if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) { return "iOS"; } return "unknown"; // return “Android” - one should either handle the unknown or fallback to a specific platform, let’s say Android } Once you’re in that rabbit hole, it’s impossible to get out of it.
  • 3 Votes
    5 Posts
    956 Views
    @crazycells Agreed. It takes a more sensible approach. Nobody ever upvotes the first post - it’s usually much further down as the conversation progresses.
  • nodebb-plugin-custom-pages

    Solved Customisation plugin custom-pages
    5
    2
    3 Votes
    5 Posts
    3k 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?
  • Nodebb design

    Solved General nodebb
    2
    1 Votes
    2 Posts
    844 Views
    @Panda said in Nodebb design: One negative is not being so good for SEO as more Server side rendered forums, if web crawlers dont run the JS to read the forum. From recollection, Google and Bing have the capability to read and process JS, although it’s not in the same manner as a physical person will consume content on a page. It will be seen as plain text, but will be indexed. However, it’s important to note that Yandex and Baidu will not render JS, although seeing as Google has a 90% share of the content available on the web in terms of indexing, this isn’t something you’ll likely lose sleep over. @Panda said in Nodebb design: The “write api” is preferred for server-to-server interactions. This is mostly based around overall security - you won’t typically want a client machine changing database elements or altering data. This is why you have “client-side” which could be DOM manipulation etc, and “server-side” which performs more complex operations as it can communicate directly with the database whereas the client cannot (and if it can, then you have a serious security flaw). Reading from the API is perfectly acceptable on the client-side, but not being able to write. A paradigm here would be something like SNMP. This protocol exists as a UDP (UDP is very efficient, as it is “fire and forget” and does not wait for a response like TCP does) based service which reads performance data from a remote source, thus enabling an application to parse that data for use in a monitoring application. In all cases, SNMP access should be “RO” (Read Only) and not RW (Read Write). It is completely feasible to assume complete control over a firewall for example by having RW access to SNMP and then exposing it to the entire internet with a weak passphrase. You wouldn’t do it (at least, I hope you wouldn’t) and the same ethic applies to server-side rendering and the execution of commands.
  • Can you adjust Admin settings on your NodeBB?

    Bugs nodebb
    5
    0 Votes
    5 Posts
    1k Views
    @Panda as, yes, now I understand and that makes 100% sense. It means those who get down voted can still have an opinion and use common services. And yes, you’re right. Rather than down vote, just ignore if you don’t agree.
  • 1 Votes
    2 Posts
    717 Views
    Closing this in favour of https://sudonix.com/topic/357/post-style-view/28
  • what does sound/mute button do?

    Solved Customisation nodebb
    20
    1
    9 Votes
    20 Posts
    3k 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…
  • 5 Votes
    9 Posts
    2k Views
    is there any way to see whose reputation is changed by this plugin?