Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inserting an iframe causes page rendering to be partial #346

Closed
madhur opened this issue Jun 18, 2011 · 15 comments
Closed

Inserting an iframe causes page rendering to be partial #346

madhur opened this issue Jun 18, 2011 · 15 comments

Comments

@madhur
Copy link

madhur commented Jun 18, 2011

Observe this page:
http://madhur.github.com/blog/2011/06/11/githubplatform.html

Source:
https://raw.github.com/madhur/madhur.github.com/master/_posts/2011-06-11-githubplatform.markdown

The page has source below the iframe (Youtube Video) but it does not get rendered. Any idea if its the Chrome or Jekyll issue ?

Thanks,
Madhur

@bdesham
Copy link
Contributor

bdesham commented Jun 19, 2011

I think this may involve problems with both Chrome and Jekyll. As you can see from the source, your iframe element has the form <iframe ... />, while AFAIK this is supposed to be <iframe ...></iframe> (see #232). On the other hand, the rest of the page is there, so it seems like Chrome should be rendering that.

@zapnap
Copy link

zapnap commented Jul 24, 2011

+1 seeing the same thing here

@madhur
Copy link
Author

madhur commented Jul 24, 2011

The solution was to insert unwanted text between iframe, for ex <iframe>unwantedtext</iframe>

Then it would render fine.

@caiogondim
Copy link

Had the same problem.
@madhur solution worked pretty fine.

@Robez
Copy link

Robez commented Jul 2, 2012

The solution for me was adding: ?wmode=opaque to the src.

iframe src="http://www.youtube.com/embed/xxzczc?wmode=opaque"

@jiguang
Copy link

jiguang commented Oct 10, 2012

Original:
<iframe width="560" height="315" src="http://www.youtube.com/embed/EKoxLxzWNOk" frameborder="0" allowfullscreen></iframe>
Fiexed:
<iframe width="560" height="315" src="http://www.youtube.com/embed/EKoxLxzWNOk" frameborder="0" allowfullscreen="allowfullscreen"></iframe>

It works for me!

@andreipetre
Copy link

@jiguang Your solution worked for me as well. Thank you!

@parkr parkr closed this as completed Mar 17, 2013
@netpoetica
Copy link

@parkr - (tagging you because you might want to reopen) - I am having this same issue with Google Maps embedded iFrame. I have an array of "location" objects in my YAML front matter, each of them has a property called "mapFrame" which stores a string to the iFrame markup. When I output it via {{ location.mapFrame }}, the first one loads but breaks the rendering of the rest of the page. I have confirmed I can render each individually, but after Jekyll loads the first iFrame, the rest of the loop does not execute and nothing else gets into the DOM.

@netpoetica
Copy link

Adding ampersand + "nbsp" to force a space in between iFrame tags caused Jekyll to render properly. This is a definite bug! @parkr Very likely that Jekyll may be doing something with "empty tags"?

@parkr
Copy link
Member

parkr commented Mar 19, 2013

@netpoetica This isn't a bug with Jekyll, but a behaviour of your renderer. Some renderers "clean up" your HTML for you, which ends up breaking it. RedCarpet, Kramdown and MaRuKu all seem to have this "let me help you with that tag that has no content in it" behaviour. File a bug report with them if you'd like to see this behaviour changed!

@netpoetica
Copy link

@parkr - I've never implicitly set a renderer for Jekyll, Jekyll set it for me! Whatever the default is, that is what I am using. Looks like Maruku is the default - is that true? Any way I could check?

@jwebcat
Copy link

jwebcat commented Mar 22, 2013

Yes maruku is the default. Try kramdown or redcarpet. Look at the Jekyll
config page in the wiki for how to specify kramdown or redcarpet.
On Mar 22, 2013 1:21 PM, "Keith Rosenberg" notifications@github.com wrote:

@parkr https://github.com/parkr - I've never implicitly set a renderer
for Jekyll, Jekyll set it for me! Whatever the default is, that is what I
am using. Looks like Maruku is the default - is that true? Any way I could
check?


Reply to this email directly or view it on GitHubhttps://github.com//issues/346#issuecomment-15319569
.

@moyer
Copy link

moyer commented Oct 18, 2013

Wrapping the iframe with a DIV seems to fix this for me.

javier-lopez added a commit to javier-lopez/javier.io that referenced this issue Dec 28, 2013
@javier-lopez
Copy link

@netpoetica workaround works with showterm.io iframes

Original
<iframe src="http://showterm.io/someurl" width="640" height="480" style="display:block; margin: 0 auto;"></iframe>

Fixed

<iframe src="http://showterm.io/someurl" width="640" height="480" style="display:block; margin: 0 auto;">&nbsp;</iframe>

@eidosabi
Copy link

@jiguang solution worked for me

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests