tbela99 / css

A CSS parser and minifier and sourcemap generator written in PHP
Other
14 stars 1 forks source link

Margin: 0 auto #38

Closed Cruglk closed 3 years ago

Cruglk commented 3 years ago

Thanks for fixing the previous issue!

New one:

.t228__maincontainer.t228__c12collumns{max-width:1200px;margin:0 auto}`

Result:

.t228__maincontainer.t228__c12collumns { max-width: 1200px; margin-top: 0 auto; margin-right: 0 auto; margin-bottom: 0 auto; margin-left: 0 auto }

Is wrong:

margin-top: 0 auto;
margin-right: 0 auto;
margin-bottom: 0 auto;
margin-left: 0 auto;

Correct:

margin-top: 0;
margin-right: auto;
margin-bottom: 0;
margin-left: auto;

Option:

'allow_duplicate_declarations' => false

Fix.

File: Renderer.php

After:

if ($value == 'none' && in_array($name, ['border', 'border-top', 'border-right', 'border-left', 'border-bottom', 'outline'])) {

Something like:

        if ($value == '0 auto' && in_array($name, ['margin-top', 'margin-right', 'margin-left', 'margin-bottom']) ) {
            if($name == 'margin-top' || $name == 'margin-bottom'){
                $value = 0;
            }else{
                $value = 'auto';
            }
        }
        if ($value == 'auto 0' && in_array($name, ['margin-top', 'margin-right', 'margin-left', 'margin-bottom']) ) {
            if($name == 'margin-left' || $name == 'margin-right'){
                $value = 'auto';
            }else{
                $value = 0;
            }
        }