Breaking: #79622 - SpaceBefore and SpaceAfter adjustments for CSS Styled Content
See forge#79622
Description
CSS Styled Content provided the possibility to the editor to fine-tune distances
between content elements. The concept of CSC relied on the editor
understanding what margins
are, how they are calculated and had to maintain
an overview of pixels that were used on the site he/she is maintaining.
This led to different problems not only for the editor but also for the integrator because he had no control about what the editor fills into these fields. Also it was hardly controllable when these distances should be variable and change on certain viewports for mobile usage.
To regain control over this behaviour we are now introducing a new concept that purely relies on CSS classes, that can be defined by the integrator.
The original fields space
and space
have been dropped, and also
the method \TYPO3\
is not called anymore.
Old TypoScript Rendering
tt_content.stdWrap.innerWrap.cObject.default.20.20 = USER
tt_content.stdWrap.innerWrap.cObject.default.20.20 {
userFunc = TYPO3\CMS\CssStyledContent\Controller\CssStyledContentController->renderSpace
space = before
constant = {$content.spaceBefore}
classStdWrap {
required = 1
noTrimWrap = |csc-space-before-| |
}
}
New TypoScript Rendering
tt_content.stdWrap.innerWrap.cObject.default.20.20 = TEXT
tt_content.stdWrap.innerWrap.cObject.default.20.20 {
field = space_before_class
required = 1
noTrimWrap = |csc-space-before-| |
}
Impact
User-defined distances between content elements are missing.
Affected Installations
All instances that use CSS Styled Content and have spaceBefore or spaceAfter values set to generate more space between their content elements.
Check if your site is affected
SELECT
uid,
pid,
spaceBefore,
spaceAfter
FROM
tt_content
WHERE
(spaceBefore > 0 OR spaceAfter > 0)
AND deleted = 0
Migration
There is no automatic migration available. If a migration is necessary you need to check the new presets available and migrate the pixels defined before to the a preset of your choice.
Example
UPDATE
tt_content
SET
spaceAfter = 0,
space_after_class = 'medium'
WHERE
spaceAfter >= 42
AND spaceAfter < 56
Replacement Documentation
For detailed information about the replacement of spaceBefore and spaceAfter, please head over to the feature documentation of SpaceBefore- and SpaceAfterClass for CSS Styled Content.
Feature-79622-SpaceBeforeAndSpaceAfterClassForCssStyledContent.rst