mPDF CSS класс для цвета текста <i>, вложенный в <li>, переопределенный цветом родителя - PullRequest
2 голосов
/ 17 января 2020

релевантный HTML выглядит следующим образом:


    <li class="lineEntry t1" title="Right-Click for Options" style="">
     <span id="job_111095">
        <i class="ic-p-appr"></i> 111095
     </span> Foo/Bar, Some Text </span>
    </li>

... и соответствующий CSS выглядит следующим образом (file = foo icomoon. css) ...

/* this is an icomoon icon, that should be green */
.ic-p-appr:before { 
  content: "\e905";
  color: #0f8040 !important;
}

... и (file = bar. css) ...


    .t1{color:#B92426;}
    /* .line-entry never defines a color */

Я добавил! Важный И загрузил foo. css После бара. css в усилии сделать значок зеленым (# 0f8040), но значок, вложенный в класс .t1, всегда наследует цвет шрифта этого родителя ТОЛЬКО, когда mpfd преобразует HTML в pdf do c. (вложенный значок в HTML работает как положено)

Когда я просматриваю документацию mPDF для поддерживаемых CSS, я не вижу там или в SO ничего, что бы указывало на причину этого. Мой mPDF - 7, и вот конфигурация:


    $mpdf = new \Mpdf\Mpdf([
        'fontDir' => array_merge($fontDirs, [
            '../vendor/resources/fonts',
        ]),
        'fontdata' => $fontData + [
            'icomoon' => [
                'R' => 'icomoon.ttf',
            ],
        ],
        'format' => 'A4-L',
        'orientation' => 'L',
        'debug' => true,
    ]);

см .: введите описание изображения здесь Помощь в этом вопросе приветствуется.

1 Ответ

0 голосов
/ 20 января 2020

Исправлено: я обнаружил, что, поскольку mPDF ver7 не поддерживает CSS псевдокласс: раньше было необходимо объявлять цвет шрифта независимо от имени класса. Так что для моего HTML вывода это сработало, .i c -p-appr: before {color: # 0f8040! Важный; } но мне пришлось объявить его снова, за исключением «: before», чтобы зарегистрировать этот стиль в документе PDF.

Резюме: mPDF7 игнорирует атрибуты стиля CSS, объявленные в псевдоклассе.

...