Skip to content

Commit

Permalink
Bring over the layout/alignment style changes from Blockbase
Browse files Browse the repository at this point in the history
This better accommodates the change in Gutenberg that causes all blocks
that support `experimentalLayout` (the Group block) to get the
`wp-container-[hash]` class added during rendering.

See Automattic/themes#4459
  • Loading branch information
coreymckrill committed Sep 8, 2021
1 parent fccca53 commit 8767768
Showing 1 changed file with 29 additions and 10 deletions.
39 changes: 29 additions & 10 deletions source/wp-content/themes/wporg-news-2021/sass/base/_alignment.scss
Original file line number Diff line number Diff line change
@@ -1,17 +1,36 @@
.wp-block-group.alignfull,
*[class*="wp-container-"] //Anything that inherits layout (container)
{
//give it some padding
//FRONTEND
.wp-site-blocks { // top level of the view
//In this situation we want to introduce a standardized gap between content and the edge of the screen.
padding-left: var(--wp--custom--post-content--padding--left);
padding-right: var(--wp--custom--post-content--padding--right);
.alignfull {
// these elements we want to "bust out" of the gap created above
margin-left: calc(-1 * var(--wp--custom--post-content--padding--left)) !important;
margin-right: calc(-1 * var(--wp--custom--post-content--padding--right)) !important;
width: unset;
// however any containers that "bust out" should re-apply that gap but this time using padding instead of margins.
&.wp-block-template-part,
&.wp-block-columns,
&.wp-block-group {
padding-left: var(--wp--custom--post-content--padding--left);
padding-right: var(--wp--custom--post-content--padding--right);
}
}
}

//Any nested containers, and anything that is alignfull
*[class*="wp-container-"], // Any nested containers
> .alignfull { // Any direct descendant that is alignfull
// bust out of the container's padding
// EDITOR (NOTE: It PROBABLY would be OK to bring these together to "simplify" the stylesheet. However the selectors are quite different
// and it's a lot easier to understand and ensure intent separated in this way.
.is-root-container { //top level of the editor
padding-left: var(--wp--custom--post-content--padding--left);
padding-right: var(--wp--custom--post-content--padding--right);
.wp-block[data-align="full"] { //blocks configured to be "align full" in "editorspeak"
margin-left: calc(-1 * var(--wp--custom--post-content--padding--left)) !important;
margin-right: calc(-1 * var(--wp--custom--post-content--padding--right)) !important;
width: calc( 100% + var(--wp--custom--post-content--padding--left) + var(--wp--custom--post-content--padding--right) ) !important;
width: unset;
>.wp-block-group {
padding-left: var(--wp--custom--post-content--padding--left);
padding-right: var(--wp--custom--post-content--padding--right);
}
}
}

Expand All @@ -37,4 +56,4 @@
max-width: var(--wp--custom--layout--content-size);
margin-left: auto !important;
margin-right: auto !important;
}
}

0 comments on commit 8767768

Please sign in to comment.