New
Jul 21, 2023 9:19 AM
#7701
[Modern CSS] For columns that aren't normally present by default for certain statuses (e.g. On-Hold doesn't show the Priority column even if it's enabled in list settings), is there a way to force it to be there? In a similar vein to hiding columns, I tried using "display:" with block, inline, and inline-block, but that doesn't seem to work for this use case./* ON-HOLD columns shown */ [data-query*='"status":3'] .header-title.priority, [data-query*='"status":3'] .data.priority{ display: inline !important; } Also a more meta question, should questions like these be posted underneath related topics instead of here in the general help thread? (e.g. https://myanimelist.net/forum/?topicid=1929120 for this one maybe) |
ArbiterofWhimJul 21, 2023 9:23 AM
Jul 21, 2023 12:14 PM
#7702
ArbiterofWhim said: [Modern CSS] For columns that aren't normally present by default for certain statuses (e.g. On-Hold doesn't show the Priority column even if it's enabled in list settings), is there a way to force it to be there? In a similar vein to hiding columns, I tried using "display:" with block, inline, and inline-block, but that doesn't seem to work for this use case. /* ON-HOLD columns shown */ [data-query*='"status":3'] .header-title.priority, [data-query*='"status":3'] .data.priority{ display: inline !important; } Also a more meta question, should questions like these be posted underneath related topics instead of here in the general help thread? (e.g. https://myanimelist.net/forum/?topicid=1929120 for this one maybe) Those missing columns are probably not present in the HTML so they were never hidden by CSS. HTML is like the base webpage code (mostly separated sections of text and links) before CSS was added to style it. You can create imitation columns in CSS with something like the :before codes, in either style it would be possible. For questions, you can ask wherever you wish, as long as it's not copy pasted in multiple places. Preferably it should be in the related topic so future users can see the question and answer. |
Jul 21, 2023 12:57 PM
#7703
Is there a way to truncate the contents of "Studios" so that it only shows the first studio listed for that anime? For example, an anime with "ufotable, Shaft, A-1 Pictures " would just show "ufotable". I'm pretty sure I can do something involving ".list-table .list-table-data .data.studio a" and maybe "span:nth-of-type(1)", but I haven't managed to find a way to do it. EDIT: nevermind, I found a way to do it, although I'm not sure if it's the cleanest. .list-table .list-table-data .data.studio span:nth-of-type(n){ display: none !important; } .list-table .list-table-data .data.studio span:nth-of-type(1){ display: inline !important; } |
ArbiterofWhimJul 21, 2023 1:05 PM
Jul 21, 2023 2:47 PM
#7704
ArbiterofWhim said: Is there a way to truncate the contents of "Studios" so that it only shows the first studio listed for that anime? For example, an anime with "ufotable, Shaft, A-1 Pictures " would just show "ufotable". I'm pretty sure I can do something involving ".list-table .list-table-data .data.studio a" and maybe "span:nth-of-type(1)", but I haven't managed to find a way to do it. EDIT: nevermind, I found a way to do it, although I'm not sure if it's the cleanest. .list-table .list-table-data .data.studio span:nth-of-type(n){ display: none !important; } .list-table .list-table-data .data.studio span:nth-of-type(1){ display: inline !important; } Nice job figuring it out! Writing a broad selector and overwriting it with a more specific one like you've done here is a completely valid way of doing things and is sometimes required. But you are correct that for this scenario you can optimise it. The easiest way would be to use :nth-of-type(n+2) .list-table .list-table-data .data.studio span:nth-of-type(n+2){ display: none; } This means it will select every nth element starting at 2. |
Jul 21, 2023 6:03 PM
#7705
Hi. So some months ago MAL did something that deleted images on lists. There's no way to recover those right? Currently my list is just a white background with a missing image icon at the top. I had a quite minimalist looking spice and wolf list layout which I'm kinda bummed about since I don't remember where I got it from. |
Jul 21, 2023 9:42 PM
#7706
I can't seem to figure out how to get rid of this table behavior where it alternates row colors. Half of them are the color I want (a mostly transparent black), but the other half aren't. Is this some kind of default setting that needs to be overwritten? (for context I'm building from the mapped list style and setting ackground-color in #list-container). EDIT: There's some kind of default ".list-table > tbody:nth-of-type(2n+1)" that's setting the alternating rows to white. I realized that I needed to also set the background color in "tbody.list-item" for the rows to overwrite that. Still not sure how to do the same thing with the table headers, as I can't get the same behavior with ".list-table .list-table-header". #list-container { background-color: rgba(0,0,0,0.4); border-color: rgba(255,255,255,0.25); width: 1100px; } /* Make all rows the same color too */ .list-table tbody.list-item{ background-color: rgba(0,0,0,0.4); } |
ArbiterofWhimJul 22, 2023 11:17 AM
Jul 22, 2023 1:24 PM
#7707
ArbiterofWhim said: … I realized that I needed to also set the background color in "tbody.list-item" for the rows to overwrite that. Still not sure how to do the same thing with the table headers, as I can't get the same behavior with ".list-table .list-table-header". Row headers are styled a bit differently yes, instead of using a background on the entire row they use a background color and image on each cell. These header cells also use different classes than the regular cells (.header-title as opposed to .data). You can see this inside Inspect Element. To remove it, I'd recommend just setting the shorthand "background" property to "none" or "transparent". .list-table .list-table-header .header-title { background: none; } |
Jul 22, 2023 1:37 PM
#7708
Xesyre_ said: I vaguely remember that yeah, I don't think it was recoverable. Not without a prior archive.org snapshot or something (which your list doesn't have, I checked). If you remember a lot of the core features of the image you might be able to find the image by searching gelbooru.com though? You could start with the spice and wolf tag and add other tags that it might have had.Hi. So some months ago MAL did something that deleted images on lists. There's no way to recover those right? Currently my list is just a white background with a missing image icon at the top. I had a quite minimalist looking spice and wolf list layout which I'm kinda bummed about since I don't remember where I got it from. |
Jul 22, 2023 6:02 PM
#7709
Valerio_Lyndon said: for some reason, applying background: none !important; to " .list-table .list-table-header .header-title" still doesn't remove the white background. The same applies to " .list-table .list-table-header" and ".list-table .list-table-header *". It wasn't until I got this general that it finally removed the white background from the header row, but doing it this way also completely removes all background behind the whole list table, which isn't ideal since it ends up fully transparent.To remove it, I'd recommend just setting the shorthand "background" property to "none" or "transparent". .list-table .list-table-header .header-title { background: none; } .list-table *{ background: none !important; } I think I must be overlooking something, but I'm not sure what it is. |
ArbiterofWhimJul 22, 2023 7:35 PM
Jul 23, 2023 1:01 PM
#7710
ArbiterofWhim said: Valerio_Lyndon said: for some reason, applying background: none !important; to " .list-table .list-table-header .header-title" still doesn't remove the white background. The same applies to " .list-table .list-table-header" and ".list-table .list-table-header *". It wasn't until I got this general that it finally removed the white background from the header row, but doing it this way also completely removes all background behind the whole list table, which isn't ideal since it ends up fully transparent.To remove it, I'd recommend just setting the shorthand "background" property to "none" or "transparent". .list-table .list-table-header .header-title { background: none; } .list-table *{ background: none !important; } I think I must be overlooking something, but I'm not sure what it is. It worked in my testing on the default list and on the mapped layout so I think it's something specific with your current CSS. I'd have to see all of it to know. You could try adding an "!important" on the value same as you did with the .list-table * selector though and see if it fixes it: .list-table .list-table-header .header-title { background: none !important; } The !important mark is a quick brute-force method of raising the priority of that value up to the max so is useful in these cases, but if there is another property in conflict somewhere that also has !important then the priority rules fall back to selectors and code order, exactly the same as normal. This is why it can be very useful but shouldn't be applied unless you need it as it makes future code more annoying to write. If that doesn't fix it then some basic trouble shooting can be done by you or by me if I have your code. The best way to go about debugging these issues is to check the element in Inspect Element and see whether your CSS is applying to the HTML as expected (by selecting the HTML element and checking the list of CSS rules) and whether it is getting overridden by higher specificity codes. Here's an example from one of my layouts where you can see that my custom codes are being applied and that the default codes have lines through them, showing that they are being successfully overridden. |
Valerio_LyndonJul 23, 2023 1:07 PM
Jul 23, 2023 1:56 PM
#7711
@Valerio_Lyndon I think I've got it figured out now after some digging around in Inspect. This is what I'm using: #list-container { background: none !important; width: 1100px; } .list-table .list-table-header .header-title{ background: none; } .list-table > tbody { background-color: rgba(0, 0, 0, 0.6) !important; } |
Aug 21, 2023 6:27 AM
#7712
Hey! You guys here seem to be quite knowledgeable when it comes to CSS. I have a problem that is driving me insane. I can't seem to get rid of the dark highlight whenever I hover over an image within my own personal list. Do you know how to fix this? I would really appreciate the help! |
死神 ❝What do you think are the most important things in life? Money, dreams, sympathy towards others... Yes, they're all important things as well... But the most important thing is responsibility for your own actions.❞ - Yuichi |
Aug 21, 2023 1:14 PM
#7713
Aug 21, 2023 4:41 PM
#7714
revzy said: Hey! You guys here seem to be quite knowledgeable when it comes to CSS. I have a problem that is driving me insane. I can't seem to get rid of the dark highlight whenever I hover over an image within my own personal list. Do you know how to fix this? I would really appreciate the help! Each list design implements things differently, but for your list you should be able to fix this by adding this short code to the bottom of your CSS: /* remove image darkening */ .data.title::before { content: none; } |
Aug 21, 2023 5:17 PM
#7715
Dolly said: hello! i'm using the classic layout for my mangalist and can't figure out which selector to use for the "notes" section and the "tags" section. is it even possible to change those separately? thank you in advance !! Classic selectors can be tricky, but thankfully tags and notes can be styled completely separate without any tricks or repeat code. To grab the top-most element of the notes you can target the "width: 85%" style attribute, as no other part of the list uses that same attribute and value. [style="width: 85%;"] { background: red; } From there you can target the rest in several different ways, either using a parent-child selector or directly using the ID selectors they provide. I'll give a couple of examples. For the main Notes text, you could either use the parent-child relation with a direct descendent mark ">" and ":first-of-type" specification. [style="width: 85%;"] > div:first-of-type [id^="noteLinks"] Same with the "Edit notes" text that shows when text is empty: [style="width: 85%;"] small a [id^="noteChangeRow"] And the textarea could be selected in a similar way. Let me know if you need any clarification. If you want to change the column itself, it can be targeted with the width attribute. Just be aware that genres share this same attriute, in-case you ever add those to your list. [class^="td"][width="125"] { background: blue; } The tags I would recommend selecting with their IDs as these are unique to the tags column. Tag link area: [id^="tagLinks"] [id^="tagLinks"] a [href$="tag=%E2%98%BA%EF%B8%8F"] { font-size: 24px; background: green; } Tag edit button/area: [id^="tagChangeRow2372"] [id^="tagChangeRow2372"] a [id^="tagChangeRow2372"] a small Edit area: [id^="tagRowEdit"] [id^="tagRowEdit"] textarea [id^="tagInfo"] [id^="tagRowEdit"] input If you continue styling the classic design you may find it can be quite tricky to code for as there aren't the easy class selectors of modern lists. A lot of classic designers fallback to overly-specific selectors by necessity that result in much less flexible code. If you need any more help on it I'd be happy to help. I tried not to over or under explain. |
Valerio_LyndonAug 21, 2023 5:21 PM
Aug 21, 2023 11:14 PM
#7716
Valerio_Lyndon said: Dolly said: hello! i'm using the classic layout for my mangalist and can't figure out which selector to use for the "notes" section and the "tags" section. is it even possible to change those separately? thank you in advance !! Classic selectors can be tricky, but thankfully tags and notes can be styled completely separate without any tricks or repeat code. To grab the top-most element of the notes you can target the "width: 85%" style attribute, as no other part of the list uses that same attribute and value. [style="width: 85%;"] { background: red; } From there you can target the rest in several different ways, either using a parent-child selector or directly using the ID selectors they provide. I'll give a couple of examples. For the main Notes text, you could either use the parent-child relation with a direct descendent mark ">" and ":first-of-type" specification. [style="width: 85%;"] > div:first-of-type Or target the start of the ID attribute: [id^="noteLinks"] Same with the "Edit notes" text that shows when text is empty: [style="width: 85%;"] small a [id^="noteChangeRow"] And the textarea could be selected in a similar way. Let me know if you need any clarification. If you want to change the column itself, it can be targeted with the width attribute. Just be aware that genres share this same attriute, in-case you ever add those to your list. [class^="td"][width="125"] { background: blue; } The tags I would recommend selecting with their IDs as these are unique to the tags column. Tag link area: [id^="tagLinks"] Individual tags: [id^="tagLinks"] a You can also target specific tags same as ever, using the end of their href value (the "$" symbol indicates the end of the attribute): [href$="tag=%E2%98%BA%EF%B8%8F"] { font-size: 24px; background: green; } Tag edit button/area: [id^="tagChangeRow2372"] [id^="tagChangeRow2372"] a [id^="tagChangeRow2372"] a small Edit area: [id^="tagRowEdit"] Editing text box: [id^="tagRowEdit"] textarea [id^="tagInfo"] Editing buttons: [id^="tagRowEdit"] input If you continue styling the classic design you may find it can be quite tricky to code for as there aren't the easy class selectors of modern lists. A lot of classic designers fallback to overly-specific selectors by necessity that result in much less flexible code. If you need any more help on it I'd be happy to help. I tried not to over or under explain. yes! thank you so much! with your help i was able to do exactly what i wanted !! i stuck with classic because that's what i'm a little more familiar with? or that's what i've been using since the dawn of time. i usually use a "base" layout code that i like the look of to fiddle around with because i can't write my own 😅. so far i haven't seen any modern layouts that appeal to me, so i am unsure if i could hodge podge a modern layout the way i wanted? modern is probably way easier and i'm just an idiot LOL. |
Aug 22, 2023 1:08 PM
#7717
Valerio_Lyndon said: I appreciate your help man, thank you, truly! :Drevzy said: Hey! You guys here seem to be quite knowledgeable when it comes to CSS. I have a problem that is driving me insane. I can't seem to get rid of the dark highlight whenever I hover over an image within my own personal list. Do you know how to fix this? I would really appreciate the help! Each list design implements things differently, but for your list you should be able to fix this by adding this short code to the bottom of your CSS: /* remove image darkening */ .data.title::before { content: none; } |
死神 ❝What do you think are the most important things in life? Money, dreams, sympathy towards others... Yes, they're all important things as well... But the most important thing is responsibility for your own actions.❞ - Yuichi |
Aug 23, 2023 11:02 PM
#7718
Dolly said: Valerio_Lyndon said: If you continue styling the classic design you may find it can be quite tricky to code for as there aren't the easy class selectors of modern lists. A lot of classic designers fallback to overly-specific selectors by necessity that result in much less flexible code. If you need any more help on it I'd be happy to help. I tried not to over or under explain. yes! thank you so much! with your help i was able to do exactly what i wanted !! i stuck with classic because that's what i'm a little more familiar with? or that's what i've been using since the dawn of time. i usually use a "base" layout code that i like the look of to fiddle around with because i can't write my own 😅. so far i haven't seen any modern layouts that appeal to me, so i am unsure if i could hodge podge a modern layout the way i wanted? modern is probably way easier and i'm just an idiot LOL. They both have their pros and cons. Modern is easier to write advanced CSS for due to the less-ambigious HTML and it has some extra features over classic. But classic has the advantages of lacking default CSS (thus you don't have to overwrite it), having a lighter-weight footprint, category headers, and all items loading at once. Didn't mean to make it sound like classic has no benefits, just wanted to mention that it generally requires a bit more knowledge of CSS selectors to do certain things. |
Sep 4, 2023 10:10 AM
#7719
Hello ! This may be a weird question, but what's the resolution that MAL use to show background wallpapers on anime/manga list ? Currently my wallpaper is 800*336, but I can't see the bottom. I'm trying to match both resolution (kinda hard because gifs are getting heavier and heavier... I have to choose between quality, loading speed, resolution, etc...) Tried background-size: cover !important; CSS Thanks in advance :) |
Sep 9, 2023 1:15 PM
#7720
Reply to Str1xRang3
Hello !
This may be a weird question, but what's the resolution that MAL use to show background wallpapers on anime/manga list ?
Currently my wallpaper is 800*336, but I can't see the bottom. I'm trying to match both resolution (kinda hard because gifs are getting heavier and heavier... I have to choose between quality, loading speed, resolution, etc...)
Tried
background-size: cover !important;
CSS
Thanks in advance :)
This may be a weird question, but what's the resolution that MAL use to show background wallpapers on anime/manga list ?
Currently my wallpaper is 800*336, but I can't see the bottom. I'm trying to match both resolution (kinda hard because gifs are getting heavier and heavier... I have to choose between quality, loading speed, resolution, etc...)
Tried
background-size: cover !important;
CSS
Thanks in advance :)
@Str1xRang3 This is a rather confusing question, as MAL doesn't have a specific resolution for wallpapers. MAL has no specific resolution as the resolution of the page will depend on the resolution of the user's browser window that views your page (in this case, you). From there, you decide the size of the wallpaper using CSS. You can set it to a static (non-changing) size, or a dynamic one that depends on the size of the browser window, such as your current "cover" size. The short explanation is that if you want the image to always fit and never crop you should either use "contain", which will maintain the image width:height ratio but fit it inside the available space with some background colour fill, "auto" to maintain the original size of the image with even more colour fill, or "100% 100%" which will stretch the image to the max extents of both width and height and have no colour fill, but this can often distort the image beyond desirable amounts. --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- The longer explanation is if you want to display the entire image, the best way is to use an image of as similar an aspect ratio as your monitor or browser window. For instance, most monitors are 16:9 width:height, so having an image of 1920x1080, 1600x900, and so forth, would be best as these will only crop perhaps a few pixels where your browser interface takes up some room. However, some people who visit your list will have weird sizes such as 1:1 (square) monitors, 4:3, or even 9:16 (vertical monitors). To account for these cases, or for times when you must use an image that is an unusual size such as your 600x336 image, I prefer to use dynamic sizes such as the "cover" you are already using. "cover" will maintain the image ratio so it still looks good in most scenarios and only crops as much as necessary to fit the entire background. If you want a specific part of the image to be visible, you should use background-position to be sure it's visible all the time. For instance, to make sure the bottom left is always in view, you could use "left bottom" and it will position around that and crop the top and right first. Or you can use % values to target somewhere in between. There is also the option of statically sizing the image to keep it the same size at all times, and the rest of the page will be filled with your regular background-color. You do this by setting a specific "px" pixel size, such as "600px 336px" or "400px auto" or just "auto" if you want to use the original size. In my opinion though, this often looks sub-optimal unless you fade/blur the image edges using CSS or an image editing program (see the background of Tilt for an example of faded background edges). |
Sep 19, 2023 7:36 PM
#7721
What's the best way to pin/integrate the stats and filter buttons into the status-menu-container, and to also have the stats bar drop down from underneath the status-menu-container when the stats button is clicked, so that it's part of the sticky menu container? Also, how do I hide the "stats" and "filters" texts so that they're just the icons? |
Sep 19, 2023 11:59 PM
#7722
Reply to ArbiterofWhim
What's the best way to pin/integrate the stats and filter buttons into the status-menu-container, and to also have the stats bar drop down from underneath the status-menu-container when the stats button is clicked, so that it's part of the sticky menu container?

Also, how do I hide the "stats" and "filters" texts so that they're just the icons?
Also, how do I hide the "stats" and "filters" texts so that they're just the icons?
@ArbiterofWhim I can't give you a plop-in working code without knowing what your other code looks like, but generally: I would recommend positioning the buttons and stats text as normal when the bar is "static", i.e not scrolling with the page. For instance you may use a "position: relative;" rule with a "top" value to align it correctly. Or I believe the ".stats" area already has "position: absolute;", so you can just roll with that. .list-unit .list-status-title .stats { top: -16px; background: black; /* so i can see wtf i am doing */ z-index: 1; /* to position above .list-stats */ } .list-unit .list-stats { position: relative; top: -54px; } As for affixing the buttons and text, I would recommend using the "preceding" symbol "~" in your selectors to target them when the category bar has the ".fixed" class. For example: .fixed ~ .list-block .list-stats { position: fixed; top: 48px; } Here's a working example that was coded for the default design if you need it. It probably won't work perfectly with your exact code, as mentioned previously, but it gives an idea of how it works. .list-unit { position: relative; /* so that shit positions relative to me */ margin-top: 50px; /* so that things don't overlap */ } .list-unit .list-status-title { position: static; /* so that .stats positions relative to a different parent */ } .list-unit .list-status-title .stats { top: -50px; background: black; /* so i can see wtf i am doing */ z-index: 1; /* to position above .list-stats */ } .list-unit .list-stats { position: absolute; top: -50px; } .fixed ~ .list-block :is(.stats,.list-stats) { position: fixed; top: 48px; right: initial; /* un-fucks the position of the buttons, but only slightly. The reason this is needed is because the buttons suddenly transition from being positioned relative to the list to relative to the window. to maintain position would require a bit more careful coding and/or some calc() functions. */ } As for the text, it's the regular case of setting font-size to 0 and then resetting the font-size back to normal for the part you want visible, in this case the icons. .stats a { font-size: 0; } .stats a i { font-size: 12px; } |
Oct 9, 2023 12:17 PM
#7723
Is it possible to pull the "Broadcast" value from a currently airing anime's page? Would be cool to have that info visible on the list, maybe even with some kind of calc to convert from JST to the user's timezone and possibly indicate whether or not you've watched the latest episode. For example, "Broadcast: Fridays at 23:00 (JST)" from Sousou no Frieren's page could show as "Fridays at 10:00 (EST)". As for the "caught up" indicator, idk if it's possible to pull the number of currently released episodes from the anime page's episodes tab, or if it would need to be estimated from the airing date, current date, and broadcast day/time. Not sure if CSS has support for logic like that though. |
Oct 14, 2023 3:04 PM
#7724
Reply to ArbiterofWhim
Is it possible to pull the "Broadcast" value from a currently airing anime's page? Would be cool to have that info visible on the list, maybe even with some kind of calc to convert from JST to the user's timezone and possibly indicate whether or not you've watched the latest episode. For example, "Broadcast: Fridays at 23:00 (JST)" from Sousou no Frieren's page could show as "Fridays at 10:00 (EST)". As for the "caught up" indicator, idk if it's possible to pull the number of currently released episodes from the anime page's episodes tab, or if it would need to be estimated from the airing date, current date, and broadcast day/time.
Not sure if CSS has support for logic like that though.
Not sure if CSS has support for logic like that though.
@ArbiterofWhim Unfortunately, since this information isn't available on the list itself, it would require scraping data from another page which is outside the scope of CSS. |
Nov 28, 2023 2:50 PM
#7725
Does anyone know how to fix the upper menu buttons on my lists, I have done some research but I don't know where is the section to be replaced on the css. The problem it's just that the icons don't show, and says "the image is no longer available"... Thanks. |
*My english is a work in progress... |
Nov 29, 2023 4:02 AM
#7726
Reply to Fab3r_of_will
Does anyone know how to fix the upper menu buttons on my lists, I have done some research but I don't know where is the section to be replaced on the css. The problem it's just that the icons don't show, and says "the image is no longer available"...
Thanks.
Thanks.
@Fab3r_of_will try to fix it with these restored topbar codes https://myanimelist.net/forum/?topicid=2130658 |
Nov 29, 2023 8:32 AM
#7727
Reply to Shishio-kun
@Fab3r_of_will try to fix it with these restored topbar codes
https://myanimelist.net/forum/?topicid=2130658
https://myanimelist.net/forum/?topicid=2130658
@Shishio-kun Ok, I fixed it! Thanks!!! |
*My english is a work in progress... |
Dec 3, 2023 11:08 AM
#7728
Reply to Valerio_Lyndon
@Str1xRang3 This is a rather confusing question, as MAL doesn't have a specific resolution for wallpapers. MAL has no specific resolution as the resolution of the page will depend on the resolution of the user's browser window that views your page (in this case, you). From there, you decide the size of the wallpaper using CSS. You can set it to a static (non-changing) size, or a dynamic one that depends on the size of the browser window, such as your current "cover" size.
The short explanation is that if you want the image to always fit and never crop you should either use "contain", which will maintain the image width:height ratio but fit it inside the available space with some background colour fill, "auto" to maintain the original size of the image with even more colour fill, or "100% 100%" which will stretch the image to the max extents of both width and height and have no colour fill, but this can often distort the image beyond desirable amounts.
The longer explanation is if you want to display the entire image, the best way is to use an image of as similar an aspect ratio as your monitor or browser window. For instance, most monitors are 16:9 width:height, so having an image of 1920x1080, 1600x900, and so forth, would be best as these will only crop perhaps a few pixels where your browser interface takes up some room.
However, some people who visit your list will have weird sizes such as 1:1 (square) monitors, 4:3, or even 9:16 (vertical monitors). To account for these cases, or for times when you must use an image that is an unusual size such as your 600x336 image, I prefer to use dynamic sizes such as the "cover" you are already using. "cover" will maintain the image ratio so it still looks good in most scenarios and only crops as much as necessary to fit the entire background. If you want a specific part of the image to be visible, you should use background-position to be sure it's visible all the time. For instance, to make sure the bottom left is always in view, you could use "left bottom" and it will position around that and crop the top and right first. Or you can use % values to target somewhere in between.
There is also the option of statically sizing the image to keep it the same size at all times, and the rest of the page will be filled with your regular background-color. You do this by setting a specific "px" pixel size, such as "600px 336px" or "400px auto" or just "auto" if you want to use the original size. In my opinion though, this often looks sub-optimal unless you fade/blur the image edges using CSS or an image editing program (see the background of Tilt for an example of faded background edges).
The short explanation is that if you want the image to always fit and never crop you should either use "contain", which will maintain the image width:height ratio but fit it inside the available space with some background colour fill, "auto" to maintain the original size of the image with even more colour fill, or "100% 100%" which will stretch the image to the max extents of both width and height and have no colour fill, but this can often distort the image beyond desirable amounts.
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
The longer explanation is if you want to display the entire image, the best way is to use an image of as similar an aspect ratio as your monitor or browser window. For instance, most monitors are 16:9 width:height, so having an image of 1920x1080, 1600x900, and so forth, would be best as these will only crop perhaps a few pixels where your browser interface takes up some room.
However, some people who visit your list will have weird sizes such as 1:1 (square) monitors, 4:3, or even 9:16 (vertical monitors). To account for these cases, or for times when you must use an image that is an unusual size such as your 600x336 image, I prefer to use dynamic sizes such as the "cover" you are already using. "cover" will maintain the image ratio so it still looks good in most scenarios and only crops as much as necessary to fit the entire background. If you want a specific part of the image to be visible, you should use background-position to be sure it's visible all the time. For instance, to make sure the bottom left is always in view, you could use "left bottom" and it will position around that and crop the top and right first. Or you can use % values to target somewhere in between.
There is also the option of statically sizing the image to keep it the same size at all times, and the rest of the page will be filled with your regular background-color. You do this by setting a specific "px" pixel size, such as "600px 336px" or "400px auto" or just "auto" if you want to use the original size. In my opinion though, this often looks sub-optimal unless you fade/blur the image edges using CSS or an image editing program (see the background of Tilt for an example of faded background edges).
@Valerio_Lyndon Sorry for the late answer. Thanks a lot for your explanations. Valerio_Lyndon said: For instance, most monitors are 16:9 width:height, so having an image of 1920x1080, 1600x900, and so forth, would be best as these will only crop perhaps a few pixels where your browser interface takes up some room. Here is the root of my problem. I may be wrong or using the wrong websites/softwares, but every 1920*1080 gifs that I've generated are way too large (often around 70mb, 1920*1080 resolution) to be uploaded on Imgur (e.g.). This leads to slow loading, which I don't want to happen. This is why i'm currently using 800*366. I tried "auto", "100% 100%", but as you said, "cover" seems to be the best. TL;DR : how to generate a 1080p 25fps gif which is not heavy and from a 1080p video : The gif that i'm trying to generate is 24 seconds long (It may be too much for a gif, but possible), and the 1080p mp4 file is around 56mb, down to 35mb if I compress it. My goal is to make a 25fps gif from that video. If I did understood what you said, the "only" good way to make everyone happy (if we consider everyone having a 16:9 screen, which is pretty common) is to make a 1920*1080 gif. So let's forget my initial question, and look at the one in the TL;DR. I tired ezgif as recommended in your guides, but I can't make 1080p gifs, and the website doesn't support 25fps for a 24 seconds video. Also tried other websites on the Internet but they don't offer as many option as ezgif. Went trough all your guides but didn't find nothing related to this kind of problem. Thanks in advance. |
Dec 3, 2023 3:17 PM
#7729
@Str1xRang3 it is simply impossible to create a small sized gif that is 1080p, 25fps AND 24s long no matter what software(website or desktop program) you use. and if you heavily compressed the gif, the quality will deteriorate and wont look good. best to just settle with a low res gif like the 800x366 or wait like ~10 years until MAL adds support for video background (doubt). |
Dec 3, 2023 11:00 PM
#7730
Reply to Str1xRang3
@Valerio_Lyndon
Sorry for the late answer.
Thanks a lot for your explanations.
Here is the root of my problem. I may be wrong or using the wrong websites/softwares, but every 1920*1080 gifs that I've generated are way too large (often around 70mb, 1920*1080 resolution) to be uploaded on Imgur (e.g.). This leads to slow loading, which I don't want to happen. This is why i'm currently using 800*366. I tried "auto", "100% 100%", but as you said, "cover" seems to be the best.
TL;DR : how to generate a 1080p 25fps gif which is not heavy and from a 1080p video :
The gif that i'm trying to generate is 24 seconds long (It may be too much for a gif, but possible), and the 1080p mp4 file is around 56mb, down to 35mb if I compress it. My goal is to make a 25fps gif from that video. If I did understood what you said, the "only" good way to make everyone happy (if we consider everyone having a 16:9 screen, which is pretty common) is to make a 1920*1080 gif.
So let's forget my initial question, and look at the one in the TL;DR.
I tired ezgif as recommended in your guides, but I can't make 1080p gifs, and the website doesn't support 25fps for a 24 seconds video. Also tried other websites on the Internet but they don't offer as many option as ezgif. Went trough all your guides but didn't find nothing related to this kind of problem.
Thanks in advance.
Sorry for the late answer.
Thanks a lot for your explanations.
Valerio_Lyndon said:
For instance, most monitors are 16:9 width:height, so having an image of 1920x1080, 1600x900, and so forth, would be best as these will only crop perhaps a few pixels where your browser interface takes up some room.
For instance, most monitors are 16:9 width:height, so having an image of 1920x1080, 1600x900, and so forth, would be best as these will only crop perhaps a few pixels where your browser interface takes up some room.
Here is the root of my problem. I may be wrong or using the wrong websites/softwares, but every 1920*1080 gifs that I've generated are way too large (often around 70mb, 1920*1080 resolution) to be uploaded on Imgur (e.g.). This leads to slow loading, which I don't want to happen. This is why i'm currently using 800*366. I tried "auto", "100% 100%", but as you said, "cover" seems to be the best.
TL;DR : how to generate a 1080p 25fps gif which is not heavy and from a 1080p video :
The gif that i'm trying to generate is 24 seconds long (It may be too much for a gif, but possible), and the 1080p mp4 file is around 56mb, down to 35mb if I compress it. My goal is to make a 25fps gif from that video. If I did understood what you said, the "only" good way to make everyone happy (if we consider everyone having a 16:9 screen, which is pretty common) is to make a 1920*1080 gif.
So let's forget my initial question, and look at the one in the TL;DR.
I tired ezgif as recommended in your guides, but I can't make 1080p gifs, and the website doesn't support 25fps for a 24 seconds video. Also tried other websites on the Internet but they don't offer as many option as ezgif. Went trough all your guides but didn't find nothing related to this kind of problem.
Thanks in advance.
Str1xRang3 said: TL;DR : how to generate a 1080p 25fps gif which is not heavy and from a 1080p video The gif that i'm trying to generate is 24 seconds long Karmashizzle is right I dont see how that would be possible, at 24 seconds long + with quality. The GIF is made bigger by all the information it contains, for example, the number of pixels the number of colors, etc. With 24 seconds and 24 frames per second thats almost 600 total frames it has to contain- that's going to make a heavy GIF especially from an anime or game Even if I take this small (awesome) GIF And I make it 1080p, and reduce it to half a second in length, it comes out to 10MB for just half a second: With my own know-how on how to reduce GIF size, which is very time consuming and not something I can easily show anyone how to do, I could maybe reduce the size a bit more, but it won't be much and the quality will deteriorate. This also because a GIF is limited in the number of colors it can contain in total throughout the entire animation. 64 total colors I think which is extremely low. Big GIFs get a weird background effect due to this, since the background which may appear to have only a few colors but actually has many. Now it is possible in very weird circumstances to have large sized and long timed GIFs that aren't too heavy. If the GIF has very little going on, like say only switching between two colors, and I mean literally only two colors one big red frame and one big blue frame, that makes a 24 second 24FPS GIF = 2MB, which is small in terms of file size for a GIF that long. Thing is since it's only switching between two colors, there's no point to having it 24 seconds long, you'd only need the two frames since that's the only thing changing and it'd only need to be a split second long. So tl;dr from all that is if you found a very simple anime scene without much color changing, an anime like Panty and Stocking, for example, or maybe a simplistic game scene, such as something from NES days, then a long GIF in the size you want could be made without much quality reduction but even then the length should be trimmed down a lot in length from 24 seconds. I was able to make some GIFs that were the size you wanted at 30MB or so using scenes from Baki where not much happens though, thats still too big but it is a bit better and if the length was reduced a lot it could probably be usable ppl who use GIFs for their background usually have the best luck with a GIF of hair blowing, or a city scape. I've seen that before. VL had the single GIF of an anime girl on his own layout and it was lightweight (the wallpaper is not part of the GIF btw). https://myanimelist.net/forum/?topicid=2112220 Also probably better to use some CSS3 animation for an animated thing instead if a GIF, unfortunately some of the images for the tutorials were removed by Imgur cuz they're anime and they dont want that there https://myanimelist.net/forum/?goto=post&topicid=2077862&id=68651707 One could also learn and use CSS3 animation to load different large width but short timed GIFs at separate times to try to make one continuous background animation, but that'd be massively complex and janky depending on the viewer's connection and number of visits.. plus there's only like 10 ppl on MAL who know how to use the animation codes + theyd have to be experienced with video-to-GIF animation so that's me and maybe 2 other ppl |
Shishio-kunDec 3, 2023 11:08 PM
Dec 4, 2023 2:15 PM
#7731
Reply to Shishio-kun
Str1xRang3 said:
TL;DR : how to generate a 1080p 25fps gif which is not heavy and from a 1080p video
The gif that i'm trying to generate is 24 seconds long
TL;DR : how to generate a 1080p 25fps gif which is not heavy and from a 1080p video
The gif that i'm trying to generate is 24 seconds long
Karmashizzle is right
I dont see how that would be possible, at 24 seconds long + with quality. The GIF is made bigger by all the information it contains, for example, the number of pixels the number of colors, etc. With 24 seconds and 24 frames per second thats almost 600 total frames it has to contain- that's going to make a heavy GIF especially from an anime or game
Even if I take this small (awesome) GIF
And I make it 1080p, and reduce it to half a second in length, it comes out to 10MB for just half a second:
With my own know-how on how to reduce GIF size, which is very time consuming and not something I can easily show anyone how to do, I could maybe reduce the size a bit more, but it won't be much and the quality will deteriorate. This also because a GIF is limited in the number of colors it can contain in total throughout the entire animation. 64 total colors I think which is extremely low. Big GIFs get a weird background effect due to this, since the background which may appear to have only a few colors but actually has many.
Now it is possible in very weird circumstances to have large sized and long timed GIFs that aren't too heavy. If the GIF has very little going on, like say only switching between two colors, and I mean literally only two colors one big red frame and one big blue frame, that makes a 24 second 24FPS GIF = 2MB, which is small in terms of file size for a GIF that long.
Thing is since it's only switching between two colors, there's no point to having it 24 seconds long, you'd only need the two frames since that's the only thing changing and it'd only need to be a split second long.
So tl;dr from all that is if you found a very simple anime scene without much color changing, an anime like Panty and Stocking, for example, or maybe a simplistic game scene, such as something from NES days, then a long GIF in the size you want could be made without much quality reduction but even then the length should be trimmed down a lot in length from 24 seconds. I was able to make some GIFs that were the size you wanted at 30MB or so using scenes from Baki where not much happens though, thats still too big but it is a bit better and if the length was reduced a lot it could probably be usable
ppl who use GIFs for their background usually have the best luck with a GIF of hair blowing, or a city scape. I've seen that before. VL had the single GIF of an anime girl on his own layout and it was lightweight (the wallpaper is not part of the GIF btw).
https://myanimelist.net/forum/?topicid=2112220
Also probably better to use some CSS3 animation for an animated thing instead if a GIF, unfortunately some of the images for the tutorials were removed by Imgur cuz they're anime and they dont want that there
https://myanimelist.net/forum/?goto=post&topicid=2077862&id=68651707
One could also learn and use CSS3 animation to load different large width but short timed GIFs at separate times to try to make one continuous background animation, but that'd be massively complex and janky depending on the viewer's connection and number of visits.. plus there's only like 10 ppl on MAL who know how to use the animation codes + theyd have to be experienced with video-to-GIF animation so that's me and maybe 2 other ppl
@Shishio-kun Thanks you both for your explantations. Guess I'm doomed for this one. But if we come back to the initial question, since a gif needs to be 1920*1080 to fits everyone's screen, can I divide this resolution by 2, 3 or even 4 to let "contain" do his work ? For example, dividing 1920*1080 by 3 makes 640*360, do a 640*360 gif will "scale perfectly" into a 1920*1080 screen ? I may be wrong on this one, but i'm just trying. I'm saying this because by doing some crash tests, I came up with a 21.9mb, 24secs, 24 fps 600*338 gif that is looking pretty good for his size, but (i think) since we can't multiply it by 2/3/4 to reach exactly 1920*1080, it comes up cropped by the "contain" and is looking weird in my list. yes at this point i'm kinda desperate lol. I did generated a 15 seconds long gif two years ago (still my list wallpaper to this day) looking decent, 20mb, 600*338, and it's actually a bit cropped but i was like "meh, it looks good so i'm done with it i guess". With that on mind I thought my luck will be enough this time for this one, but not today i guess ahaha |
Dec 4, 2023 9:42 PM
#7732
@Str1xRang3 I don't understand your post since there are too many ways for me to interpret these words, and I'm not sure what you mean by can I divide this resolution by 2, 3 or even 4 to let "contain" do his work ? or since we can't multiply it by 2/3/4 to reach exactly 1920*1080 etc But maybe this will be something you can use: body{ background-size: cover !important; background-image: url(https://imgpile.com/images/GQGoAL.gif); background-attachment: fixed; background-repeat: no-repeat; } And the background image will cover all screens equally. Also the GIF loads fine and looks ok Otherwise I guess if you can list some hypothetical examples of what you want to do |
Shishio-kunDec 4, 2023 10:32 PM
Dec 9, 2023 7:05 PM
#7733
Reply to Str1xRang3
@Shishio-kun
Thanks you both for your explantations.
Guess I'm doomed for this one.
But if we come back to the initial question, since a gif needs to be 1920*1080 to fits everyone's screen, can I divide this resolution by 2, 3 or even 4 to let "contain" do his work ? For example, dividing 1920*1080 by 3 makes 640*360, do a 640*360 gif will "scale perfectly" into a 1920*1080 screen ? I may be wrong on this one, but i'm just trying.
I'm saying this because by doing some crash tests, I came up with a 21.9mb, 24secs, 24 fps 600*338 gif that is looking pretty good for his size, but (i think) since we can't multiply it by 2/3/4 to reach exactly 1920*1080, it comes up cropped by the "contain" and is looking weird in my list.
yes at this point i'm kinda desperate lol.
I did generated a 15 seconds long gif two years ago (still my list wallpaper to this day) looking decent, 20mb, 600*338, and it's actually a bit cropped but i was like "meh, it looks good so i'm done with it i guess". With that on mind I thought my luck will be enough this time for this one, but not today i guess ahaha
Thanks you both for your explantations.
Guess I'm doomed for this one.
But if we come back to the initial question, since a gif needs to be 1920*1080 to fits everyone's screen, can I divide this resolution by 2, 3 or even 4 to let "contain" do his work ? For example, dividing 1920*1080 by 3 makes 640*360, do a 640*360 gif will "scale perfectly" into a 1920*1080 screen ? I may be wrong on this one, but i'm just trying.
I'm saying this because by doing some crash tests, I came up with a 21.9mb, 24secs, 24 fps 600*338 gif that is looking pretty good for his size, but (i think) since we can't multiply it by 2/3/4 to reach exactly 1920*1080, it comes up cropped by the "contain" and is looking weird in my list.
yes at this point i'm kinda desperate lol.
I did generated a 15 seconds long gif two years ago (still my list wallpaper to this day) looking decent, 20mb, 600*338, and it's actually a bit cropped but i was like "meh, it looks good so i'm done with it i guess". With that on mind I thought my luck will be enough this time for this one, but not today i guess ahaha
@Str1xRang3 I agree and echo most of what Karma and Shishio said. GIFs are an ancient format that have been stretched to their limits, so big resolutions are just not very viable. To answer your question and come back to my earlier post, yes! Using a smaller image of the same resolution will work fine as long as you use the correct background-size value. This is what I meant with my earlier "ratio" ramblings. 1920x1080 is a 16:9 ratio so anything in that ratio will appear nicely, such as the 640x360 resolution you mention. Shishio-kun said: ppl who use GIFs for their background usually have the best luck with a GIF of hair blowing, or a city scape. I've seen that before. VL had the single GIF of an anime girl on his own layout and it was lightweight (the wallpaper is not part of the GIF btw). https://myanimelist.net/forum/?topicid=2112220 I actually used one big webp image with the frames placed vertically and then animated it using CSS. This allowed a smoother transparency effect, better compression, and higher resolution at the cost of some up-front effort on my part. The same effect could be achieved with a PNG file but at much larger filesize (5.9MB compared to 0.8MB, in my case). I wouldn't particularly recommend this method for a full-page background though, as the CSS animation basically relies on the size being static and a full-page background is anything but static. Plus, it's so much more trouble than just converting to a GIF. In the future perhaps animated webp will be supported on websites. I can dream, anyway. |
Valerio_LyndonDec 9, 2023 7:12 PM
Dec 9, 2023 9:47 PM
#7734
@Valerio_Lyndon ooo just noticed how small animated webp are. i've converted my manga list gif bg to webp now its down from 6.4mb to 1.8mb. NOICE im curious on the coding for that image sheet. where can i see it? hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp |
Dec 9, 2023 9:54 PM
#7735
Reply to Valerio_Lyndon
@Str1xRang3
I agree and echo most of what Karma and Shishio said. GIFs are an ancient format that have been stretched to their limits, so big resolutions are just not very viable. To answer your question and come back to my earlier post, yes! Using a smaller image of the same resolution will work fine as long as you use the correct background-size value. This is what I meant with my earlier "ratio" ramblings. 1920x1080 is a 16:9 ratio so anything in that ratio will appear nicely, such as the 640x360 resolution you mention.
I actually used one big webp image with the frames placed vertically and then animated it using CSS. This allowed a smoother transparency effect, better compression, and higher resolution at the cost of some up-front effort on my part. The same effect could be achieved with a PNG file but at much larger filesize (5.9MB compared to 0.8MB, in my case). I wouldn't particularly recommend this method for a full-page background though, as the CSS animation basically relies on the size being static and a full-page background is anything but static. Plus, it's so much more trouble than just converting to a GIF.
In the future perhaps animated webp will be supported on websites. I can dream, anyway.
I agree and echo most of what Karma and Shishio said. GIFs are an ancient format that have been stretched to their limits, so big resolutions are just not very viable. To answer your question and come back to my earlier post, yes! Using a smaller image of the same resolution will work fine as long as you use the correct background-size value. This is what I meant with my earlier "ratio" ramblings. 1920x1080 is a 16:9 ratio so anything in that ratio will appear nicely, such as the 640x360 resolution you mention.
Shishio-kun said:
ppl who use GIFs for their background usually have the best luck with a GIF of hair blowing, or a city scape. I've seen that before. VL had the single GIF of an anime girl on his own layout and it was lightweight (the wallpaper is not part of the GIF btw).
https://myanimelist.net/forum/?topicid=2112220
ppl who use GIFs for their background usually have the best luck with a GIF of hair blowing, or a city scape. I've seen that before. VL had the single GIF of an anime girl on his own layout and it was lightweight (the wallpaper is not part of the GIF btw).
https://myanimelist.net/forum/?topicid=2112220
I actually used one big webp image with the frames placed vertically and then animated it using CSS. This allowed a smoother transparency effect, better compression, and higher resolution at the cost of some up-front effort on my part. The same effect could be achieved with a PNG file but at much larger filesize (5.9MB compared to 0.8MB, in my case). I wouldn't particularly recommend this method for a full-page background though, as the CSS animation basically relies on the size being static and a full-page background is anything but static. Plus, it's so much more trouble than just converting to a GIF.
In the future perhaps animated webp will be supported on websites. I can dream, anyway.
Valerio_Lyndon said: I actually used one big webp image with the frames placed vertically and then animated it using CSS. This allowed a smoother transparency effect, better compression, and higher resolution at the cost of some up-front effort on my part. The same effect could be achieved with a PNG file but at much larger filesize (5.9MB compared to 0.8MB, in my case). I wouldn't particularly recommend this method for a full-page background though, as the CSS animation basically relies on the size being static and a full-page background is anything but static. Plus, it's so much more trouble than just converting to a GIF. Oh... 😬😬😬😬 Well actually I totally knew that! A-and I was just totally testing you! 😎🥺️ |
Dec 9, 2023 9:57 PM
#7736
Reply to karmashizzle
@Valerio_Lyndon ooo just noticed how small animated webp are. i've converted my manga list gif bg to webp now its down from 6.4mb to 1.8mb. NOICE
im curious on the coding for that image sheet. where can i see it?

hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp
im curious on the coding for that image sheet. where can i see it?
hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp
@karmashizzle The problem with animated webp on MAL right now is that MAL doesn't seem to support it. You will be able to see it since you will see the original image link, but anyone else visiting will see MAL's rehosted version which returned a server error when I tested animated webp on my list. So visitors will just see no images where there should be. This could be bypassed though if you hosted the CSS externally so that MAL doesn't reprocess the image links, I guess that would be possible! Disproven, see below replies. The image sheet is a standard CSS frame animation, been used for years (but rarely). There are probably guides around, I found a few when testing. The relevant code from my list can be seen here though. You set up a standard CSS keyframe animation and then use the "steps()" animation-timing-function. The hardest part is getting the correct % values on the animation but I thankfully had a clean 20. #status-menu::after { --h: 450px; content: ""; position: absolute; z-index: 2; pointer-events: none; bottom: 2px; left: 0; width: 100%; height: var(--h); background: url(https://files.catbox.moe/4w99u3.webp) calc(50% + 370px) 0vh / auto calc(var(--h) * 20) no-repeat; animation: step-20 3s steps(1, jump-start) infinite; /* original speed is 2560ms */ clip-path: inset(0 0 13px 0); } @keyframes step-20 { 0%, 100% { background-position-y: 0px; } 5% { background-position-y: calc(var(--h) * -1); } 10% { background-position-y: calc(var(--h) * -2); } 15% { background-position-y: calc(var(--h) * -3); } 20% { background-position-y: calc(var(--h) * -4); } 25% { background-position-y: calc(var(--h) * -5); } 30% { background-position-y: calc(var(--h) * -6); } 35% { background-position-y: calc(var(--h) * -7); } 40% { background-position-y: calc(var(--h) * -8); } 45% { background-position-y: calc(var(--h) * -9); } 50% { background-position-y: calc(var(--h) * -10); } 55% { background-position-y: calc(var(--h) * -11); } 60% { background-position-y: calc(var(--h) * -12); } 65% { background-position-y: calc(var(--h) * -13); } 70% { background-position-y: calc(var(--h) * -14); } 75% { background-position-y: calc(var(--h) * -15); } 80% { background-position-y: calc(var(--h) * -16); } 85% { background-position-y: calc(var(--h) * -17); } 90% { background-position-y: calc(var(--h) * -18); } 95% { background-position-y: calc(var(--h) * -19); } } |
Valerio_LyndonDec 9, 2023 11:52 PM
Dec 9, 2023 10:00 PM
#7737
Reply to karmashizzle
@Valerio_Lyndon ooo just noticed how small animated webp are. i've converted my manga list gif bg to webp now its down from 6.4mb to 1.8mb. NOICE
im curious on the coding for that image sheet. where can i see it?

hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp
im curious on the coding for that image sheet. where can i see it?
hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp
@karmashizzle OK this is an interesting new development, and it's probably been possible for the longest time |
Dec 9, 2023 10:06 PM
#7738
Reply to Shishio-kun
Valerio_Lyndon said:
I actually used one big webp image with the frames placed vertically and then animated it using CSS. This allowed a smoother transparency effect, better compression, and higher resolution at the cost of some up-front effort on my part. The same effect could be achieved with a PNG file but at much larger filesize (5.9MB compared to 0.8MB, in my case). I wouldn't particularly recommend this method for a full-page background though, as the CSS animation basically relies on the size being static and a full-page background is anything but static. Plus, it's so much more trouble than just converting to a GIF.
I actually used one big webp image with the frames placed vertically and then animated it using CSS. This allowed a smoother transparency effect, better compression, and higher resolution at the cost of some up-front effort on my part. The same effect could be achieved with a PNG file but at much larger filesize (5.9MB compared to 0.8MB, in my case). I wouldn't particularly recommend this method for a full-page background though, as the CSS animation basically relies on the size being static and a full-page background is anything but static. Plus, it's so much more trouble than just converting to a GIF.
Oh... 😬😬😬😬
Well actually I totally knew that! A-and I was just totally testing you! 😎🥺️
@Shishio-kun Sasuga, Shishio knows everything! |
Dec 9, 2023 10:39 PM
#7739
Reply to Valerio_Lyndon
@karmashizzle The problem with animated webp on MAL right now is that MAL doesn't seem to support it. You will be able to see it since you will see the original image link, but anyone else visiting will see MAL's rehosted version which returned a server error when I tested animated webp on my list. So visitors will just see no images where there should be. This could be bypassed though if you hosted the CSS externally so that MAL doesn't reprocess the image links, I guess that would be possible! Disproven, see below replies.
The image sheet is a standard CSS frame animation, been used for years (but rarely). There are probably guides around, I found a few when testing. The relevant code from my list can be seen here though. You set up a standard CSS keyframe animation and then use the "steps()" animation-timing-function. The hardest part is getting the correct % values on the animation but I thankfully had a clean 20.
The image sheet is a standard CSS frame animation, been used for years (but rarely). There are probably guides around, I found a few when testing. The relevant code from my list can be seen here though. You set up a standard CSS keyframe animation and then use the "steps()" animation-timing-function. The hardest part is getting the correct % values on the animation but I thankfully had a clean 20.
#status-menu::after { --h: 450px; content: ""; position: absolute; z-index: 2; pointer-events: none; bottom: 2px; left: 0; width: 100%; height: var(--h); background: url(https://files.catbox.moe/4w99u3.webp) calc(50% + 370px) 0vh / auto calc(var(--h) * 20) no-repeat; animation: step-20 3s steps(1, jump-start) infinite; /* original speed is 2560ms */ clip-path: inset(0 0 13px 0); } @keyframes step-20 { 0%, 100% { background-position-y: 0px; } 5% { background-position-y: calc(var(--h) * -1); } 10% { background-position-y: calc(var(--h) * -2); } 15% { background-position-y: calc(var(--h) * -3); } 20% { background-position-y: calc(var(--h) * -4); } 25% { background-position-y: calc(var(--h) * -5); } 30% { background-position-y: calc(var(--h) * -6); } 35% { background-position-y: calc(var(--h) * -7); } 40% { background-position-y: calc(var(--h) * -8); } 45% { background-position-y: calc(var(--h) * -9); } 50% { background-position-y: calc(var(--h) * -10); } 55% { background-position-y: calc(var(--h) * -11); } 60% { background-position-y: calc(var(--h) * -12); } 65% { background-position-y: calc(var(--h) * -13); } 70% { background-position-y: calc(var(--h) * -14); } 75% { background-position-y: calc(var(--h) * -15); } 80% { background-position-y: calc(var(--h) * -16); } 85% { background-position-y: calc(var(--h) * -17); } 90% { background-position-y: calc(var(--h) * -18); } 95% { background-position-y: calc(var(--h) * -19); } }
@Valerio_Lyndon you see the animated webp in the spoiler right? thanks for le code 👍 |
Dec 9, 2023 10:57 PM
#7740
@karmashizzle I see the animated banner and avatar This is a beautiful remix!! Perfection. If you want I can share it in our next showcase, like this one but for December https://myanimelist.net/forum/?topicid=2127558 |
Dec 9, 2023 11:41 PM
#7741
@karmashizzle Just visited your profile page. Your gifs really made my day. lol![]() |
Dec 9, 2023 11:47 PM
#7742
Reply to Shishio-kun
@karmashizzle
I see the animated banner and avatar
This is a beautiful remix!! Perfection. If you want I can share it in our next showcase, like this one but for December
https://myanimelist.net/forum/?topicid=2127558
I see the animated banner and avatar
This is a beautiful remix!! Perfection. If you want I can share it in our next showcase, like this one but for December
https://myanimelist.net/forum/?topicid=2127558
@Shishio-kun are you talking about my anime or manga list? they're different. umm, sure why not @hideso 👍 |
karmashizzleDec 10, 2023 12:00 AM
Dec 9, 2023 11:50 PM
#7743
Reply to karmashizzle
@Valerio_Lyndon ooo just noticed how small animated webp are. i've converted my manga list gif bg to webp now its down from 6.4mb to 1.8mb. NOICE
im curious on the coding for that image sheet. where can i see it?

hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp
im curious on the coding for that image sheet. where can i see it?
hmm, maybe @Str1xRang3 can convert their enormous gif to webp and it'll be decently sized?¿? https://ezgif.com/gif-to-webp
@karmashizzle Ugggh okay it was the image host I was trying to use. I don't know what was happening but despite displaying other images on MAL fine and displaying the animated webp fine on the website, it refused to show animated webp on MAL. Well in that case that is definitely the best option. If Str1x has an original video file instead of a gif then the output result should be a lot higher quality, but even converting gif to webp should still reduce the size by a lot. https://ezgif.com/video-to-webp |
Dec 9, 2023 11:51 PM
#7744
Reply to karmashizzle
@Shishio-kun are you talking about my anime or manga list? they're different.
umm, sure why not
@hideso 👍
umm, sure why not
@hideso 👍
@karmashizzle I hadn't seen your mangalist! Another fantastic theming job, love it! Images show up just fine. |
Dec 10, 2023 12:10 AM
#7745
@karmashizzle they both work! I like them in different ways very cool 😎 |
Dec 16, 2023 2:33 PM
#7746
Hello! I copied a mal list layout from one of the threads and for some reason, it takes a looong time to open my list https://myanimelist.net/animelist/Aly_VeeVee It takes like 2 minutes for the list to load I tried 3 different layouts and all of them takes a while to load Is it fine for you guys or is there something I'm doing wrong? Edit: I did ask a friend and it seems to load perfectly fine for them... Must be my internet or computer |
removed-userDec 16, 2023 3:47 PM
Dec 17, 2023 8:37 AM
#7747
Hello, Been a while since I've had to update my customised mal pages using Stylish so apologies if I missed or overlooked something simple. I've got the Add Custom Backgrounds function added on Stylish and previously used one of the standard backgrounds, but guessing this has disappeared from the page location as my background for the main mal landing page suddenly showed "This Image is no longer Available". On opening Stylish I noticed the pages I used a couple of years back have changed. I opened the Add Custom Background section and went to the coding tab using editor application. I uploaded an image onto imgur and copied the link into the code and pasted this onto Code Section 01 tab, as follows: /* MAIN BACKGROUND */ .page-common #headerSmall:after { background-size: cover !important; background-color: #000000 !important; background-image: url(https://i.imgur.com/3Fi26Mf.jpg) !important; background-position: center bottom !important; } When I select the preview function the image I selected shows up as the background on my main mal page (not my anime list page, just to be clear), as intended, but when I hit save the background switches to solid light blue. I didn't change any other part of the code, except including the imgur link. Can you help at all please? Many thanks |
Dec 17, 2023 9:02 PM
#7748
Reply to removed-user
Hello! I copied a mal list layout from one of the threads and for some reason, it takes a looong time to open my list
https://myanimelist.net/animelist/Aly_VeeVee
It takes like 2 minutes for the list to load
I tried 3 different layouts and all of them takes a while to load
Is it fine for you guys or is there something I'm doing wrong?
Edit: I did ask a friend and it seems to load perfectly fine for them... Must be my internet or computer
https://myanimelist.net/animelist/Aly_VeeVee
It takes like 2 minutes for the list to load
I tried 3 different layouts and all of them takes a while to load
Is it fine for you guys or is there something I'm doing wrong?
Edit: I did ask a friend and it seems to load perfectly fine for them... Must be my internet or computer
@Aly_VeeVee There are a few reasons it is loading slower. The theme code shouldn't be adding much weight (about 60kb at most), but the variation you installed has extra addons and install methods which are adding a lot more weight. Without over-explaining, I believe the mangalist is probably your issue as it seems to be falling back on the full database since you have no mangalist entries. On my end it's loading 8MB of extra data for code alone. You don't have any mangalist entries and shouldn't need this, so just remove it. The line of code is right at the top of your CSS and looks like this: @\import "https://malscraper.azurewebsites.net/covers/manga/Aly_VeeVee/presets/dataimagelinkbefore"; Don't remove the anime one or your anime covers will be blank. If it's still slow there are other things we can do but that should help a lot already. |
Dec 17, 2023 9:09 PM
#7749
Reply to 23feanor
Hello,
Been a while since I've had to update my customised mal pages using Stylish so apologies if I missed or overlooked something simple. I've got the Add Custom Backgrounds function added on Stylish and previously used one of the standard backgrounds, but guessing this has disappeared from the page location as my background for the main mal landing page suddenly showed "This Image is no longer Available".
On opening Stylish I noticed the pages I used a couple of years back have changed. I opened the Add Custom Background section and went to the coding tab using editor application. I uploaded an image onto imgur and copied the link into the code and pasted this onto Code Section 01 tab, as follows:
/* MAIN BACKGROUND
*/
.page-common #headerSmall:after {
background-size: cover !important;
background-color: #000000 !important;
background-image: url(https://i.imgur.com/3Fi26Mf.jpg) !important;
background-position: center bottom !important;
}
When I select the preview function the image I selected shows up as the background on my main mal page (not my anime list page, just to be clear), as intended, but when I hit save the background switches to solid light blue. I didn't change any other part of the code, except including the imgur link. Can you help at all please?
Many thanks
Been a while since I've had to update my customised mal pages using Stylish so apologies if I missed or overlooked something simple. I've got the Add Custom Backgrounds function added on Stylish and previously used one of the standard backgrounds, but guessing this has disappeared from the page location as my background for the main mal landing page suddenly showed "This Image is no longer Available".
On opening Stylish I noticed the pages I used a couple of years back have changed. I opened the Add Custom Background section and went to the coding tab using editor application. I uploaded an image onto imgur and copied the link into the code and pasted this onto Code Section 01 tab, as follows:
/* MAIN BACKGROUND
*/
.page-common #headerSmall:after {
background-size: cover !important;
background-color: #000000 !important;
background-image: url(https://i.imgur.com/3Fi26Mf.jpg) !important;
background-position: center bottom !important;
}
When I select the preview function the image I selected shows up as the background on my main mal page (not my anime list page, just to be clear), as intended, but when I hit save the background switches to solid light blue. I didn't change any other part of the code, except including the imgur link. Can you help at all please?
Many thanks
@23feanor It's probably due to the current promotion MAL is running, the main background is blue due to ads. Without the rest of the code I can't tell you what to change for a fix since it's using a pseudo element and I have no idea what the layering priority is without the rest of the CSS. That said I just tried out the currently listed background image script Shishio has listed here: https://myanimelist.net/forum/?topicid=2073022 https://userstyles.world/style/8356/custom-background And it was working for me and overwriting the blue background. You may want to try out the newer script. |
Dec 17, 2023 11:00 PM
#7750
@Valerio_Lyndon Thanks for the link. Turns out the problem was Stylish, which I found out won't run properly on Chrome on some pages, mal must be one of them. Installed Stylus and the script and it's working fine now. Thanks for the help. |
More topics from this board
» theme helpthreat - Jul 5 |
5 |
by Zaryf
»»
Aug 21, 5:46 AM |
|
» [CSS - Modern] 🍰 Clarity by V.L ( 1 2 3 4 5 ... Last Page )Valerio_Lyndon - Apr 19, 2018 |
1261 |
by KiranaStarr
»»
Aug 16, 5:48 PM |
|
» [CSS] ⭐️ Customize your List Cursor + Cursor FixesShishio-kun - Mar 8, 2021 |
30 |
by Shishio-kun
»»
Jul 28, 3:17 AM |
|
» How To Have Different Banner/Cover image & Background Image For Manga & Anime ListsYasminaRegina - Jul 25 |
2 |
by YasminaRegina
»»
Jul 26, 1:02 AM |
|
Sticky: » 💚 [REPAIR STICKY] Repair/speed up layouts + Request layout fixes ( 1 2 )Shishio-kun - Nov 17, 2023 |
52 |
by LucaBalsa
»»
Jul 6, 2:02 PM |