V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
binbinyouliiii
V2EX  ›  HTML

现在有什么好的办法取代 iframe

  •  
  •   binbinyouliiii · Feb 13, 2017 · 12592 views
    This topic created in 3364 days ago, the information mentioned may be changed or developed.

    需要网页中显示文章,文章是用马克飞象生成的 html ,生成的 html 带 css 链接,不用 iframe 的话,会影响到文章之外的元素,现在好像都不怎么提倡实用 iframe ,搜了很长时间都没有好的替代办法

    我的需求就是显示文章但是不影响到文章以外的元素,请问有什么好的办法吗

    Supplement 1  ·  Feb 13, 2017
    试了一下, shadow dom 的确可以把内容添加到指定位置,而且和外界不干扰,在 chrome56 虽然可以加载,但是样式上还是有些问题,其它浏览器直接无法正常加载
    10 replies    2017-02-17 02:37:31 +08:00
    blanu
        1
    blanu  
       Feb 13, 2017 via iPhone   ❤️ 1
    该用时就用,还没被官方标准抛弃就是可以的用法。何况现在解决方案的兼容性都很差
    ianva
        2
    ianva  
       Feb 13, 2017   ❤️ 2
    shadow dom
    binbinyouliiii
        3
    binbinyouliiii  
    OP
       Feb 13, 2017
    @ianva 看着被支持的浏览器不多啊,文章也很少
    Kilerd
        4
    Kilerd  
       Feb 13, 2017
    pjax
    civet
        5
    civet  
       Feb 13, 2017 via iPhone
    在线编辑器的预览功能都是 iframe 的。安全点再加个 sandbox 属性吧
    binbinyouliiii
        6
    binbinyouliiii  
    OP
       Feb 13, 2017
    @Kilerd pjax 原理上应该也是 ajax 吧,只是添加内容到页面中,应该也会影响外部吧
    ibufu
        7
    ibufu  
       Feb 14, 2017
    你的目的就是为了不让 css 污染,那么只要不要让类重名就好了。:)
    binbinyouliiii
        8
    binbinyouliiii  
    OP
       Feb 14, 2017 via Android
    @ibufu 并没有这么简单,我已经避免了各种重名,然而像 body 这种标签没办法啊,还有 before 啥的,由于不是前端,改的话无从下手
    ibufu
        9
    ibufu  
       Feb 14, 2017
    修改马克飞象生产的 css 源码把,把它的所有 css 规则外面都套一个类名。然后你给你网页中放置文章的容器加上这个类名。
    halden
        10
    halden  
       Feb 17, 2017
    那些必须重名的你在 CSS 里面加 !important ,就我所知除了 iframe 之外暂时没有一个能完美解决的方法
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   845 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 19:42 · PVG 03:42 · LAX 12:42 · JFK 15:42
    ♥ Do have faith in what you're doing.