Выделение HTML с помощью prism.js

Я не могу выделить HTML с prism.js, потому что он удаляет разметку, просто печатая текст. следующий код внутри тега "pre" показывает только текст. У меня есть класс для тега "код" установлен на "язык разметки".

    <table class="data-table">
        <tr>
            <td>Title</td>
            <td>Amount</td>
        </tr>
        <tr>
            <td>Shorts</td>
            <td>£1.00</td>
        </tr>   
        <tr>
            <td>Shorts</td>
            <td>£1.00</td>
        </tr>           
    </table>

показывает как

            Title
            Amount


            Shorts
            £1.00


            Shorts
            £1.00

2 ответа

Решение

Вам нужно избежать начала тегов с &lt;, Самый простой способ - вставить HTML-код в тег pre, а затем выполнить поиск и замену всех < персонажи.

Это должно работать:

&lt;table class="data-table">
    &lt;tr>
        &lt;td>Title&lt;/td>
        &lt;td>Amount&lt;/td>
    &lt;/tr>
    &lt;tr>
        &lt;td>Shorts&lt;/td>
        &lt;td>£1.00&lt;/td>
    &lt;/tr>   
    &lt;tr>
        &lt;td>Shorts&lt;/td>
        &lt;td>£1.00&lt;/td>
    &lt;/tr>           
&lt;/table>

В качестве альтернативы вы можете обернуть свой код <script type="prism-html-markup"> your code </script>

Другие вопросы по тегам