Changelog
Keep track of what's new with ACSS! For details on specific features and utilities, please check the official documentation.
- June 20, 2024
3.0.0-rc-2
WCEU delayed the investigation of the Gutenberg bug, so we’re releasing what we have this week. Next week is scheduled for official 3.0. Note: ACSS is stable for production sites and should be safe to upgrade as well. Please make a backup. If you notice any issues after upgrade please report them.
Added control for default section block padding
You can now control the default section block padding value, including the ability to remove top or bottom section padding by default (helpful in certain use cases).
New "Use Block Editor for Page Building" Option
When editing pages with the block editor, ACSS will no longer assume you want to use the block editor for full page building and will not change the block editor behavior.
If you do want to use the block editor for full page building, you can toggle this feature on under Options > Gutenberg.
Warning: This is still not perfect on sites that have plugins which use blocks on the block editor API prior to V3 because of an architectural issue in Gutenberg that we have to find a workaround for. Details on this issue here.
Improve color scheme compatibility with auto color relationships
There were a few specificity issues related to auto color relationships when combined with color scheme. These have been worked out.
Line-height inputs now support calc()
Some line height inputs supported
calc()
and some didn’t. Now they all do.Line-height variable application now supports calc()
Using
calc()
for line-height within variables can be problematic if placed on generic elements like thebody
, so the framework has been improved to ensure that calculated line heights are applied accurately.New smart line-height defaults
The default value for line height has been changed to a new, smarter approach to line height which adds a “leading” value in pixels to double the x-height value of the font.
This approach sets a sensible default line height for headings and text that scales appropriately across all sizes and responds more accurately to fluid responsive typography while still being easy for users to adjust.
Workaround for "sticky hover" issue on touch devices
Setting hover using the pseudo class
:hover
alone has always been problematic in the era of touch devices. This is because, on touch devices, hover styles “stick” on user interaction. This is undesirable for<button>
elements and anchor links.We’ve improved buttons and links to ensure they no longer suffer from this default browser interpretation of traditional
:hover
styles.
- June 7, 2024
3.0.0-rc-1
We were hoping that this week would be the release of 3.0 official. Unfortunately, there’s a dashboard loading issue in Gutenberg, possibly related to the latest WP update, that requires further investigation. To make things more challenging, this issue does not apply to every install. There’s also an issue with how Gutenberg sometimes loads in an iframe and sometimes doesn’t, which makes the block editor unpredictable.
Gutenberg is far more of a technical mess than most people realize and it causes endless problems with development. As it stands now, 3.0 official is scheduled for release after our return from Italy, the week after next.
With that said, ACSS 3.0 is now in RC phase. Users are encouraged to backup existing websites, copy the export JSON from the import/export screen (store it somewhere safe), and upgrade to 3.0. The JSON export is required in case you need to rollback your install for some reason. Also note: We would not recommend bulk updating websites yet. Update sites independently, clear all caching including server caching, and then review your site to verify a clean upgrade.
JS Recipes
We’ve added a new category of recipes dedicated to writing Javascript in a builder environment. The first recipe added is
@script;
which generates script tags using the type=”module” syntax for creating a new scoping context (to prevent collisions), automatically deferring the script, and ensuring DOM is loaded before script execution.Save changes from search results
You can now save changes from the search results screen.
Smart spacing only affects direct children
One of the smart spacing instructions (for lists) was inappropriately touching certain children. That’s obviously not a good thing, so we’ve fixed it.
XL Breakpoint default value now matches content width default value
When we changed the default content width for new installs to 1366, we left the XL breakpoint at 1280. These now match out of the gate.
Fixed the .on-scroll sticky header bug in Bricks
You can thank Bricks’ mild addiction to unnecessary specificity for that one.
Toggle labels no longer collide with the dashboard header
Z-index is a bitch sometimes.
Fix for boxed layout tossing the dashboard off the screen
There are so many points of contention for creating a floating, pinnable panel across a wide range of builder environments and browsers. Things aren’t perfect, but they continue to improve.
Fixed an issue with Gutenberg button code output
Too technical to describe in a short paragraph. All-in-all, less code gets output now, buttons still work great, and there’s nothing to see here.
- May 30, 2024
3.0-beta-3
We’re getting close! We’re going to try and avoid another beta version. If all goes well, the next release should be 3.0 official!
Dashboard Integration in Gutenberg & Generate
The ACSS dashboard now loads and instantly previews in Gutenberg. This also provides integration for Generate Blocks users.
Dashboard Integration in Breakdance (See Notes)
The ACSS dashboard now loads and instantly previews in Breakdance.
Note: Breakdance doesn’t have a hook that allows us to load the dashboard in the Breakdance builder DOM. The only hook they offer is loading the dashboard in the builder’s preview/canvas DOM.
This isn’t an ideal experience, so we’ve reached out to the Breakdance team and it looks like they’ll add a new hook for us. Once that hook is released, we’ll move the dashboard into the full builder DOM.
Contextual menus and other builder enhancements will follow in a future release to complete full integration with Breakdance.
Dashboard Integration in Oxygen
The ACSS dashboard now loads and instantly previews in Oxygen.
New & enhanced btn() mixin
- The new, more powrful
btn()
mixin replaces the oldbtn-default()
mixin. You can now apply styles from *any* of the 36 available button styles in ACSS to any selector with a single include statement. Read more about button mixins.
- The new, more powrful
New @btn recipe
- We’ve added a new
@btn
recipe, perfect for creating custom buttons. Read more about button recipes.
- We’ve added a new
Automatic support for sticky headers in boxed layouts in Bricks
- Activating the boxed layout feature in ACSS would not have previously affected sticky headers in Bricks because of their fixed position and 100% width. We’ve now added native/automatic support for fixed/sticky headers when boxed layouts are active.
- If you’ve manually created a sticky header, all you have to do is add the class “.sticky” to your header to gain boxed layout support.
Note: We’ll be extending support to other builders that have a sticky header option soon.
Gutenberg canvas background color, spacing, and text sizes.
- Gutenberg looked odd in previous betas due to ACSS’s inability to load in Gutenberg fully. This should be resolved now.
Note: Certain users may still have issues due to the complexity and messiness of the Gutenberg environment. If you encounter any new issues, please start a thread in the ACSS support group.
Fixed button classes in Gutenberg
- Button classes reverted to styling the wrapper that Gutenberg places on all links instead of the links themselves. This is now fixed.
Tertiary palette folder and swatches now load in Bricks
In previous betas, the functionality for installing the new Tertiary color swatches and Tertiary color folder in Bricks’ color picker was missing. This is now fixed. However, since Bricks doesn’t have a proper hook for installing colors, you must deactivate and then reactivate ACSS for previously deactivated colors to be installed natively in the builder (once that color is turned on).
Fixed dashboard dropdown z-index issue
The dropdown was going behind the dashboard’s sticky header bar. This is now fixed.
- May 16, 2024
3.0-beta-2.2
Conditional logic for automatic content offset
- Turn off content offset with a custom header selector. Default is
[data-header-sticky='0']
, but you can create your own. - Turn off content offset with body class selectors. Default is
.content-offset--off
but you can target any body classes you’d like.
- Turn off content offset with a custom header selector. Default is
Improve drag and pin functionality
It’s still not perfect, but it’s definitely better.
Remove Gutenberg master switch
This started out as an internal insurance policy of sorts, but it’s redundant now so we’ve removed it.
Dashboard inputs now allow negative values
Better late than never.
Fixed missing .smart-spacing utility class
It wandered off. We found it and brought it back.
Fixed HSL inputs from clearing when deleting lightness value
When you deleted the lightness value, the hue and saturation also disappeared. This isn’t the “automatic” we were going for, so we’ve patched it.
Fixed HSL inputs from changing when an adjacent input was edited
When you edited an HSL value, the adjacent values would change randomly. While this created a fun little game of “Can You Actually Dial That Color In?!,” we ultimately decided that it wasn’t suitable for an efficient, professional workflow.
- May 9, 2024
3.0 beta-2.1
This release focuses primarily on the new drag/resize/dock/pin functionality of the dashboard and the new native cheatsheet.
Note: There are a few known issues with the new drag functionality and a few data/category discrepancies in the cheat sheet. We’re already implementing improvements for the next release, but given the nature of the beta we want to get these new features to users as quickly as possible for additional feedback. Point being: don’t expect it to be perfect yet – it’s still a work in progress.
Dragging Functionality
You can now grab the header of the dashboard, drag it, and drop it anywhere on the canvas. It will float over existing content.
Vertical Resizing Functionality
You can now grab the handle at the bottom of the dashboard and vertically resize the dashboard.
Docking Functionality
When you drag the dashboard to the left or right edge of the screen, it will detect the edge and dock itself to that side.
Pinning Functionality
When the dashboard is docked to the left or right side of the screen, a pin icon will appear in the header. Clicking this pin will pin the dashboard in a “sidecar” position, giving you an unobstructed view of your canvas while ACSS is open.
Persistent Positioning
The dashboard will remember the previous position you left it in and return to that position every time you open it.
Native Cheat Sheet
The cheat sheet is back and it lives right within your ACSS dashboard! It’s sortable and searchable with direct links to documentation and icons for copying selectors.
In the next version it’ll also have a visual indicator for which utilities are disabled on the current install.
Note: We’re still working on documentation links, outliers, and general organization.
Smart Spacing improvements
- Bricks-related improvements
- Live-preview related improvements
Improved arrow key handling in inputs with units.
If the value of an input was “1rem” or similar, up/down keys would drop the unit and break the value.
Spacing scale input now properly cycles through math scales
Re-activating license causes license validation failure
In previous versions, a license could not be re-activated due to license obfuscation. We’ve implemented a workaround for this.
Fix for unexpected character output error on activation