Сокращение HTML и CSS в одну строку в Node.js - PullRequest
0 голосов
/ 14 июня 2019

Существует ли модуль или опция gulp, которая может минимизировать html и css в одну строку?

Например,

<style media='screen' type='text/css'>
    .text {
        padding: 1px 1px 1px 1px;
        font-size: 12px;
    }
</style>

<!-- now for html -->

<div style='width:550px;' >
    <div style='float:left;font-size:1.2em;' class='text'>
        Title goes here
    </div>
    <div style='width:60px;float:left;' class='text'>
        <span style='font-size:0.8em;'>
            ®
        </span>
    </div>
    <div style='float:left' class='text'>
        Some paragraph text
    </div>
    <div style='float:left;padding-top:10px;' class='text'>
        <span style='font-style:italic;'>
            A footer to the paragraph
        </span>
    </div>
</div>

Может ли указанное выше значение минимизироваться на одну строку с помощью узла.JS, так это выглядит ниже.

<style media='screen' type='text/css'>.text {padding: 1px 1px 1px 1px;font-size:12px;}</style><!-- now for html --><div style='width:550px;' >  <div style='float:left;font-size:1.2em;' class='text'>MY BRILLIANCE</div><div style='width:60px;float:left;' class='text'>      <span style='font-size:0.8em;'>®</span> </div>  <div style='float:left' class='text'>       With release comes growth, through challenge comes wisdom, let us show you the way. </div>  <div style='float:left;padding-top:10px;' class='text'><span style='font-style:italic;'>Absolute Equal Acceptance through Thought, Conscience and Reunion.</span></div></div>

Ответы [ 3 ]

1 голос
/ 14 июня 2019

Старайтесь хранить файлы HTML и CSS отдельно. И учиться SASS. После изучения SASS вы можете спросить: «Почему я использую CSS». С SASS вы сможете минимизировать CSS. Перейдите на https://sass -lang.com / install и загрузите «Prepros». Также доступна бесплатная версия, просто скачайте и установите ее.

0 голосов
/ 29 июня 2019
var minify = require("html-minifier").minify;

var html = `<style media='screen' type='text/css'>
.text {
    padding: 1px 1px 1px 1px;
    font-size: 12px;
}
</style>

<!-- now for html -->

<div style='width:550px;' >
<div style='float:left;font-size:1.2em;' class='text'>
    Title goes here
</div>
<div style='width:60px;float:left;' class='text'>
    <span style='font-size:0.8em;'>
        ®
    </span>
</div>
<div style='float:left' class='text'>
    Some paragraph text
</div>
<div style='float:left;padding-top:10px;' class='text'>
    <span style='font-style:italic;'>
        A footer to the paragraph
    </span>
</div>
</div>`;

var result = minify(html, {
  collapseWhitespace: true,
  minifyCSS: true,
  quoteCharacter: "'"
});

console.log(result);

Выход

<style media='screen' type='text/css'>.text{padding:1px 1px 1px 1px;font-size:12px}</style><!-- now for html --><div style='width:550px'><div style='float:left;font-size:1.2em' class='text'>Title goes here</div><div style='width:60px;float:left' class='text'><span style='font-size:.8em'>®</span></div><div style='float:left' class='text'>Some paragraph text</div><div style='float:left;padding-top:10px' class='text'><span style='font-style:italic'>A footer to the paragraph</span></div></div>
0 голосов
/ 14 июня 2019

Существует очень популярный пакет html-minifier.

Минимальный пример с сайта:

var minify = require('html-minifier').minify;
var result = minify('<p title="blah" id="moo">foo</p>', {
  removeAttributeQuotes: true
});
result; // '<p title=blah id=moo>foo</p>'
...