For the images contained in /misc, I would like to propose that we upgrade these to use CSS sprites. My analysis is that these images:
PNGs:
tree.png
tree-bottom.png
menu-expanded.png
menu-collapsed.png
grippie.png
draggable.png

GIFs:
menu-leaf.png
progress.gif
can combined into 2 images using CSS sprites, thereby reducing the number of HTTP requests from 9 to 2.

Comments

wretched sinner - saved by grace’s picture

Version: 6.x-dev » 7.x-dev

Features get done in HEAD first, then (possibly) backported.

For reference:
Dries' views on sprites in core (2009): #552000-19: Smush core images
catch's views on sprites in core (2009): #552000-18: Smush core images
Crell's views on sprites in core (2006): #102636-1: Garland: Combine bg-navigation-item.png and bg-navigation-item-hover.png for faster hovering

Related issues:
#203367: Automatic Image sprites. which is a request to automatically generate sprites for any images (2007).
#102636: Garland: Combine bg-navigation-item.png and bg-navigation-item-hover.png for faster hovering to use sprites in Garland (2006).
#563190: Add ability to alter css data when preprocess_css is enabled allowing css to be altered for sprites (2009).

wretched sinner - saved by grace’s picture

Version: 7.x-dev » 8.x-dev
Josh The Geek’s picture

betovarg’s picture

I dont think spriteme.com could be helpful. Sprite me grabs all the images inside a web page that is currently showing to create a sprite.
I dont think gnerating a sprite is a problem for core icons such as:

menu-collapsed.png
menu-expanded.png
menu-leaf.png
message-24-error.png
message-24-ok.png
message-24-warning.png
(maybe all the other message-16-*.png as well)

Now, the problem we might run into is maintenance. Where will the .psd for these sprites be posted on? Also there should be good documentation in order to mantain that. Oh, and RTL could also be an issue here, I believe. I'll work on a test for a sprite on the suggested images, and the stylesheets that use it.

Thoughts?

mgifford’s picture

I really like the idea of keeping these images in an Inkscape format that has built in version control and is open source. But ya, not sure who would maintain the images. I'm not sure how any of the existing images are maintained.

I don't think RTL will be a problem here, but really would want to have that tested by someone who is testing this with RTL.

Few solutions like:
http://css.spritegen.com/
http://csssprites.com/
http://css-sprit.es/

Here's one for consideration.

I do wonder about grouping general admin icons & separating out the very common ones like RSS feeds that anonymous users would be seeing.

mgifford’s picture

Issue tags: +sprite

tagging.

jhedstrom’s picture

Version: 8.0.x-dev » 8.1.x-dev
Issue summary: View changes
mgifford’s picture

Issue tags: +svg, +Performance

Now, although we can make SVG Sprites - https://24ways.org/2014/an-overview-of-svg-sprite-creation-techniques/

Will there be a performance impact - http://codepen.io/adrianosmond/pen/LCogn

Something to consider when looking at 8.1...

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.0-beta1 was released on March 2, 2016, which means new developments and disruptive changes should now be targeted against the 8.2.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.2.x-dev » 8.3.x-dev

Drupal 8.2.0-beta1 was released on August 3, 2016, which means new developments and disruptive changes should now be targeted against the 8.3.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.3.x-dev » 8.4.x-dev

Drupal 8.3.0-alpha1 will be released the week of January 30, 2017, which means new developments and disruptive changes should now be targeted against the 8.4.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.0-alpha1 will be released the week of July 31, 2017, which means new developments and disruptive changes should now be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.5.x-dev » 8.6.x-dev

Drupal 8.5.0-alpha1 will be released the week of January 17, 2018, which means new developments and disruptive changes should now be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.6.x-dev » 8.7.x-dev

Drupal 8.6.0-alpha1 will be released the week of July 16, 2018, which means new developments and disruptive changes should now be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.7.x-dev » 8.8.x-dev

Drupal 8.7.0-alpha1 will be released the week of March 11, 2019, which means new developments and disruptive changes should now be targeted against the 8.8.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.0-alpha1 will be released the week of October 14th, 2019, which means new developments and disruptive changes should now be targeted against the 8.9.x-dev branch. (Any changes to 8.9.x will also be committed to 9.0.x in preparation for Drupal 9’s release, but some changes like significant feature additions will be deferred to 9.1.x.). For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.9.x-dev » 9.1.x-dev

Drupal 8.9.0-beta1 was released on March 20, 2020. 8.9.x is the final, long-term support (LTS) minor release of Drupal 8, which means new developments and disruptive changes should now be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 9.1.x-dev » 9.2.x-dev

Drupal 9.1.0-alpha1 will be released the week of October 19, 2020, which means new developments and disruptive changes should now be targeted for the 9.2.x-dev branch. For more information see the Drupal 9 minor version schedule and the Allowed changes during the Drupal 9 release cycle.

Version: 9.2.x-dev » 9.3.x-dev

Drupal 9.2.0-alpha1 will be released the week of May 3, 2021, which means new developments and disruptive changes should now be targeted for the 9.3.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.0-rc1 was released on November 26, 2021, which means new developments and disruptive changes should now be targeted for the 9.4.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.0-alpha1 was released on May 6, 2022, which means new developments and disruptive changes should now be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.5.x-dev » 10.1.x-dev

Drupal 9.5.0-beta2 and Drupal 10.0.0-beta2 were released on September 29, 2022, which means new developments and disruptive changes should now be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 10.1.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch, which currently accepts only minor-version allowed changes. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

smustgrave’s picture

Status: Active » Postponed (maintainer needs more info)
Issue tags: +stale-issue-cleanup

Thank you for sharing your idea for improving Drupal.

We are working to decide if this proposal meets the Criteria for evaluating proposed changes. There hasn't been any discussion here for over 8 years which suggests that this has either been implemented or there is no community support. Your thoughts on this will allow a decision to be made.

Since we need more information to move forward with this issue, the status is now Postponed (maintainer needs more info). If we don't receive additional information to help with the issue, it may be closed after three months.

Thanks!

smustgrave’s picture

Status: Postponed (maintainer needs more info) » Closed (outdated)

Since there's been no follow up and as a feature request going to close out. Can always be re-opened

Thanks!

Now that this issue is closed, please review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, please credit people who helped resolve this issue.