1. jesem

    16.11.2008 09:49

    Добрый день.
    Столкнулся с такое проблемой — кроме подсветки синтаксиса мне нужна фоновая подсветка строк (это вывод diff файла), для этого внутри тегов <pre> <code> я использую <span> с указанием нужного класса. Но в этом случае highliht.js перестает работать. Как то это можно решить?
    Заранее благодарен за подсказку.
  2. Иван Сагалаев

    16.11.2008 19:35

    Так происходит по двум причинам. Во-первых считается, что если внутри кода уже есть какая-то разметка, то автор кода имел намерение показать что-то отдельное, и не надо ему мешать еще дополнительной разметкой. Но главное, это просто очень сложно сделать, потому что авторская разметка может перемешиваться с автоматической произвольным образом, и это надо как-то совмещать. Если представить себе например вот такой фрагмент с комментарием:

    some_func(); /* This is a multiline
                    comment 
                 */
    

    То что тут кого должно разрезать? <span>ы строк комментарный <span> или нет? А если в авторской разметке это не строки, а что-то еще? И это простой случай из головы, если хорошо подумать, там могут быть вещи и сложнее.

    В связи с этим я не знаю конкретного ответа на вопрос "как" :-). Наверное можно подумать в сторону подкладывания под <pre> с хайлайтингом фонового <div>а с полосатыми строками.

bbcode