undelo

CSS შემკუმშველი

შეამცირე CSS კომენტარებისა და ზედმეტი გამოტოვებების მოცილებით

ამცირებს CSS-ის ზომას კომენტარებისა და ზედმეტი ხარვეზების მოცილებით, ფაილის ზომას ამცირებს იმავე სტილების შენარჩუნებით.

როგორ მუშაობს

შემკუმშველი შლის /* კომენტარებს */, კუმშავს ხარვეზების მიმდევრობებს და შლის ხარვეზებს ისეთი სტრუქტურული სიმბოლოების გარშემო, როგორიცაა { } : ; ,. ეს არის რეგექსზე დაფუძნებული, საუკეთესო-მცდელობის შემკუმშველი, სრული CSS პარსერის ნაცვლად, ამიტომ ჯერ ამოწმებს ფიგურული ბრეკეტების ბალანსს, როგორც საბაზისო შემოწმებას, დამუშავებამდე.

ხშირად დასმული კითხვები

ამოწმებს, ჩემი CSS მთლიანად სწორია?

მთლიანად არა — ის ამოწმებს ბრეკეტების ბალანსს, როგორც საბაზისო შემოწმებას, მაგრამ ნამდვილი CSS პარსერი არ არის. სხვა სახის შეცდომების მქონე CSS (დაკარგული მნიშვნელობა, გატეხილი სელექტორი) მაინც „შემცირდება“ საჩივრის გარეშე, რადგან ყველა შესაძლო შეცდომის საიმედო დაჭერას სრული პარსერი სჭირდება.

რატომ უარყო ჩემი CSS შეცდომით?

მხოლოდ ბალანსში არმყოფი ფიგურული ბრეკეტებისთვის — { და } სიმბოლოების არათანაბარი რაოდენობა (დათვლილი სტრიქონებისა და კომენტარების გარეთ) ნიშნავს, რომ რაღაც სტრუქტურულად გატეხილია, ამიტომ შემდგომი შემცირება არ ეცდება.

შეიძლება შემცირებამ დაარღვიოს ჩემს CSS-ში სტრიქონული მნიშვნელობა, მაგალითად content: "a b"?

შესაძლებელია — string-ლიტერალებში ხარვეზი, როგორიცაა content: "a b", შეიძლება დანარჩენთან ერთად შეიკუმშოს, რადგან ეს მსუბუქი, რეგექსზე დაფუძნებული შემკუმშველია, არა ისეთი, რომელსაც CSS-ის სტრიქონული სინტაქსის სრული გაგება აქვს. ეს ცნობილი, მიღებული კომპრომისია სიმარტივის შესანარჩუნებლად.

რამდენად რეალურად ამცირებს შემკუმშველი ჩემს CSS-ს?

ეს დიდწილად დამოკიდებულია იმაზე, რამდენი ხარვეზი და კომენტარია ორიგინალში — ძლიერ დაფორმატებული, კომენტარებით სავსე სტილების ფაილი შესამჩნევად შემცირდება, ხოლო უკვე კომპაქტური CSS დიდად არ შეიცვლება.

ჩემი CSS სადმე იგზავნება?

არა — შემცირება მთლიანად თქვენს ბრაუზერში, JavaScript-ის სტრიქონული დამუშავებით ხდება. არაფერი იტვირთება.