I am developing a page based on frames that has 2 frames, horizontally. The top frame displays a banner (a small Flash File) while the bottom frame contains the main body. The top frame (banner.htm) contains just the Flash File, nothing else. In spite of that, there are blank spaces appearing above and below the Flash. A vertical scrollbar is also appearing, in spite of specifying ScrollBars=None in the Frameset Page.

What am I doing wrong ? How can I remove the blank spaces and the scrollbar ?

I am giving the code of the body portion of both the frame and banner pages.

Banner.htm

<BODY>
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"
 id="BanFlash">
<PARAM NAME=movie VALUE=".\Flash\Banner.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#FFFFFF>
	<EMBED src=".\Flash\Banner.swf" quality=high bgcolor=#FFFFFF 
	NAME="BanFlash" ALIGN="" TYPE="application/x-shockwave-flash"
	PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>
</OBJECT>
</BODY>

------------------------------------------------

Frameset Page

<FRAMESET ROWS="36%, 63%" BORDER=0 SCROLLBARS="None">

<FRAME SRC="Banner.htm" NAME="Banner">
<FRAME SRC="Main.htm" NAME="MainBody">

</FRAMESET>

try measuring the exact size of the flash file and giving the height and width values in the frame the values from the flash picture... that way it is imperfection proof...

Wow, why would you ever still want to use frames? It's such an archaic design tool with both fundamental and implementation problems, having said this though, if you insist on using them try reading up on your coding:

www.w3.org/TR/html401/present/frames.html

Just a bit of help though, the extra space is caused by your frameset not equal to 100%, the difference is divided equally between the frames, additionally there is no "scrollbars" code, the code is "scrolling" and should be set to yes, no or auto. Lastly, the scrolling does not go in the frameset tag but in the same tag as the frame src.

you should consider switching from frames to tables... are much more efficient and appealing...

Thanks TXWebDesign for the help. It solved the scrolling problem and blank spaces problem. There is a little bit of blank space at the left, but that is probably due to incorrect width specification. Have to check out.

Both of you have suggested not using Frames. My original idea was that since banner is always present at the top for every page, it would be more convenient to keep it in a frame at the top. That way I wouldn't have to put it the top of every page. Is that a incorrect policy ? What would be a better way of implementing that (short of putting it at the top of every page) ?

i don't think it is an incorrect policy... though it causes more chances to have something wrong... those small mistakes than are a pain in the *** and you don't know how to get rid of them...

Agreed. It's not about being incorrect, browsers just don't handle frames very well anymore. There are some issues with frames that have just become obsolete in the varying browsers. Search engines have problems unless you direct them to the particular frame.

I personally would use tables, as Nichito, expressed. If you create one page and then use it as a template, you don't really need to change it other than the content portion of the page. CSS would be another viable option but I'm unsure how familiar you are with it.

you could find some basic instruction in css here, though i prefer a good book...

combine tables and css and you should have a powerful tool even if you like WYSIWYG editors, or you don't write your own code often...

I know some CSS, though not as much as I would love to. Some sites I found used CSS dazzlingly and I hope someday I can get somewhere near that. As for WYSIWIGS, I actually use Notepad for writing html:$

For getting the same header on every page...

- Configure your server for SSI ( server side includes: http://en.wikipedia.org/wiki/Server_Side_Includes ), or Perl / PHP, or anything else that can glue pages together on the fly.

- Or come up with your own search/replace policy. For example, if you write <!--!!$$$HEADER$$$!!--> where you want your header to be in every file, then do a search and replace in all files before uploading them -- its better than maintaining multiple versions of the same code in different files, and you could even automate it. I'm sure Windows must have some kind of search-replace across files, certain editing environments do for sure.

- You could also use Javascript to append a header to each page, although, that's not a great way to do it since its a post-process, and its offloading trivial work onto client machines..

Thanks MattEvans.

creating your own code is a great thing... though you should want to use a tool like EditPlus, since it (at least) highlights code and stuff, it's pretty useful...

you should take a look to the book i recommended... it's a really good book... and not a heavy reading... i read it myself, and i truly recommend it... specially if you write your own code...

MattEvans points to another good alternative. The only drawback would be the learning curve. At this point though, it's something you should really consider if you're going to be doing this more. SSI can be configured on most servers and there's plenty of help out there. While there are differences in the varying coding languages, they really aren't too difficult to learn with a little time and effort.

server side include is best option,
typing code is nice , for that try edit plus or notepad++....

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.