Jak wyświetlić zawartość HTML w github README.md?


Odpowiedzi:


47

Interpreter Markdown Githuba może zawierać HTML. Jednak w HTML można zrobić tylko tyle. Proponuję zapoznać się z tym artykułem, który zawiera więcej informacji o tym, jakich tagów można używać. Osobiście nigdy nie używałem więcej niż podziałów wierszy, reguł poziomych itp. Niestety, nie widzę ramek iframe wspomnianych w artykule.


14
Agresywnie usuwają html, który może być szkodliwy dla użytkowników, na przykład skrypty. Element iframe należałby do tej kategorii, ponieważ potencjalnie mógłbyś służyć ludziom wszystko, nawet złośliwe oprogramowanie na githubie.
s1h4d0w

39

Jak odpowiedział mjgpy3 , to może zawierać html - brak <html>tagów potrzebne, ale to być oczyszczone przed wyświetlaczem i jedyne tagi są dozwolone w tej białej listy .

Obecnie lista obejmuje:

h1 h2 h3 h4 h5 h6 h7 h8 br b i strong em a pre code img tt div ins del sup sub p ol ul table thead tbody tfoot blockquote dl dt dd kbd q samp var hr ruby rt rp li tr td th s strike summary details caption figure figcaption abbr bdo cite dfn mark small span time wbr

ale nie iframe.


1
Lista opublikowana przez lazysoundsystem Zmieniona. Zobacz wiersz # 46,47,48 dla DOPUSZCZALNYCH TAGÓW HTML: GitHub-HTML-pipeline-sanitization_filter.rb , zweryfikowałem + stwierdziłem, że w tej chwili link jest poprawny. Takie TAGy niedozwolone: ​​skrypt, styl, iframe, span,… Ale div, table… częściowo dozwolone. GitHub usuwa również / filtruje wiele atrybutów używanych wewnątrz tagów. Ponieważ GitHub może stosować filtrowanie do TAGów i atrybutów, powinny zezwalać na <style>, <script>,… z włączonym filtrowaniem, aby umożliwić przynajmniej niektóre bezpieczne właściwości / polecenia CSS + JS.
atErik

1

Możesz użyć svg do obejścia, przykładowy kod (./path/example.svg):

<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg">
<foreignObject width="100" height="100">
    <div xmlns="http://www.w3.org/1999/xhtml">
        <ul>
            <li>text</li>
        </ul>
        <!-- Other embed HTML element/text into SVG -->
    </div>
</foreignObject>
</svg>

a następnie użyj metody wstawiania obrazu, aby osadzić plik svg w dowolnym innym pliku markdown, na przykład:

![](./path/example.svg)
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.