Reputation: 299
I want to display an image within an iframe on my webpage. However, the problem is that I can't get it to expand to 100% of its size.
What I want to do is the following.
Currently, here's the code I have:
echo"<iframe name='graph' id='graph' src=$image style='position:absolute; top:0px; left:0px; height:100%;width:100%'></iframe>";
What this does is that, it makes the iframe come on top of my webpage and still doesn't expand to 100%. If i remove the position:absolute instead:
echo"<iframe name='graph' id='graph' src=$image style='top:0px; left:0px; height:100%;width:100%'></iframe>";
I end up getting it to expand in width to 100%, but in terms of height, it is just 3 pixels high and there is a scrollbar to scroll to the bottom.
I scoured the web looking for a fix, but nothing I tried works. Some mentioned changing CSS as well, but to no avail ...
EDIT
Another problem I face is that the image is zoomed out in Firefox. I need to click on the image within the iframe to expand it to its full size. It shows up correctly in Chrome and IE though. Is there a fix for this?
Upvotes: 11
Views: 106121
Reputation: 121
use below code to to display image.
<iframe frameborder="0" scrolling="no" width="100%" height="100%"
src="../images/eightball.gif" name="imgbox" id="imgbox">
<p>iframes are not supported by your browser.</p>
</iframe><br />
<a href="../images/redball.gif" target="imgbox">Red Ball</a><br />
<a href="../images/floatingball.gif" target="imgbox">Floating Ball</a><br />
<a href="../images/eightball.gif" target="imgbox">Eight Ball</a>
Upvotes: 7
Reputation: 1778
IF you have access to the image locally AND you can use the php GD functions...
$img_rsrc = imagecreatefromjpeg($path_to_image);
// or imagecreatefrompng, imagecreatefromgif, etc, depending on the type of your image
$height = imagesy($img_rsrc);
$width = imagesx($img_rsrc);
imagedestroy($img_rsrc);
Then set the size of your iframe in pixels based on the height and width. You may have to add a bit to the height and width to account for margins.
Upvotes: 0
Reputation: 449415
Your problem is that you are directly embedding an image resource.
This is never going to work the way you want. The image is always going to be original size.
You need to set the src
property of the iframe to a separate HTML file with a body
of its own, wrapping around the image. Then you can give it 100% width and/or height inside the body using CSS.
Upvotes: 0
Reputation: 930
The container (the enclosing div, if you don't have a container you should create one,) seems to be what is limiting the height of the iframe. Try making the height of the container 100%.
Upvotes: 0
Reputation: 52372
You can use some JavaScript to detect the size of the iframe contents and resize the iframe.
Upvotes: 2
Reputation: 114367
Add this to your main page's CSS:
body, html {
height:100%
}
Upvotes: 0