J4 Issue ?
avatar ciar4n
ciar4n
15 Jun 2018

Bootstrap includes a collection of utility classes (eg. flex-column, mb-2, d-block). These are the classes used to apply single line CSS rules and are used throughout Joomla's views. Utility classes in practice are a good thing. They promote modular CSS and allow somewhat easier application of basic rules to markup.

The problem is Bootstrap obviously doesn't know what utility classes are needed. It therefore has taken the blanket approach of mapping a large chunk of the entire CSS spec to utility classes. That translates to close on 3000 lines of render blocking CSS, roughly a third of the entire framework (https://github.com/joomla/joomla-cms/blob/4.0-dev/media/vendor/bootstrap/css/bootstrap.css#L6002-L8901). Each rule using the frowned upon !important. I'll be hugely generous and say that in Joomla we use about 5% of these. That is a lot of dead weight and is contrary to the benefits of modular CSS. This list of utility classes appears to be extended with every new version of Bootstrap.

The solution is to either stop using them or have an environment where we control the utility classes (#20623).

avatar ciar4n ciar4n - open - 15 Jun 2018
avatar joomla-cms-bot joomla-cms-bot - change - 15 Jun 2018
Labels Added: ?
avatar joomla-cms-bot joomla-cms-bot - labeled - 15 Jun 2018
avatar ciar4n ciar4n - change - 15 Jun 2018
The description was changed
avatar ciar4n ciar4n - edited - 15 Jun 2018
avatar brianteeman
brianteeman - comment - 15 Jun 2018

or to submit an issue upstream with bootstrap?

avatar ciar4n
ciar4n - comment - 15 Jun 2018

And ask them to kindly remove a third of their codebase? ?

avatar franz-wohlkoenig franz-wohlkoenig - change - 15 Jun 2018
Category Layout
avatar franz-wohlkoenig franz-wohlkoenig - change - 15 Jun 2018
Status New Discussion
avatar ciar4n ciar4n - change - 15 Jun 2018
The description was changed
avatar ciar4n ciar4n - edited - 15 Jun 2018
avatar brianteeman brianteeman - change - 15 Jun 2018
Labels Added: J4 Issue
avatar brianteeman brianteeman - labeled - 15 Jun 2018
avatar ciar4n ciar4n - change - 23 Aug 2018
Status Discussion Closed
Closed_Date 0000-00-00 00:00:00 2018-08-23 04:59:17
Closed_By ciar4n
avatar ciar4n ciar4n - close - 23 Aug 2018

Add a Comment

Login with GitHub to post a comment