Click here to Skip to main content
15,889,858 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
All,
I have an old web application which is now giving me issues while opening in Firefox/Chrome. Basically, the web has frame layout (I know its not recommended, but I dont really have to time to change this).

Below is the framelayout,

XML
<html xmlns="http://www.w3.org/1999/xhtml">
    <frameset rows="84,*">
        <frame src="1.html" name="menu" noresize="noresize" frameborder="no">
        <frameset cols="25%,*" >
            <frameset rows="*,20%" >
                <frame src="1.html" name="index" frameborder="no">
                <frame src="1.html" name="docindex">
            </frameset>
            <frameset rows="16,*" >
                <frame src="1.html" name="pathbar" frameborder="no">
                <frameset rows="*,0" >
                    <frame src="1.html" name="content"  frameborder="no">
                    <frame src="1.html" name="navigation" frameborder="no">
                </frameset>
            </frameset>
        </frameset>
    </frameset>
</html>


1.html is nothing but a black page,

XML
<html>
<body style="background-color:red;">
</body>
<html>


What I see is that there is white space after the menu frame. Any help would be much appreciated. Thanks in advance.
Posted
Updated 29-Dec-10 3:26am
v2
Comments
Manfred Rudolf Bihy 29-Dec-10 11:48am    
Hi Manas, I've updated my answer to reflect your needs and if you were the one who downvoted me, I'd appreciate (and deserve) reconsideration. Thank you.

1 solution

Hello Manas,

all you need to do is use frameborder="0" and framespacing="0" attributes in the frameset tag like in my modification of your code:

Elaborated example


Frameset.html:
HTML
<html xmlns="http://www.w3.org/1999/xhtml">
    <frameset rows="84,*" frameborder="0" framespacing="0" >
        <frame src="1.html" name="menu" noresize="noresize" frameborder="no">
        <frameset cols="25%,*" frameborder="0" framespacing="0" >
            <frameset rows="*,20%" frameborder="0" framespacing="0" >
                <frame src="DocIndex.html" name="index">
                <frame src="Index.html" name="docindex">
            </frameset>
            <frameset rows="16,*" frameborder="0" framespacing="0" >
                <frame src="1.html" name="pathbar" frameborder="no">
                <frameset rows="*,0" frameborder="0" framespacing="0" >
                    <frame src="1.html" name="content"  frameborder="no">
                    <frame src="1.html" name="navigation" frameborder="no">
                </frameset>
            </frameset>
        </frameset>
    </frameset>
</html>


DocIndex.html:
HTML
<html>
    <head>
        <link rel="stylesheet" type="text/css" href="./BodyStyles.css" />
    </head>
    <body class="doc">
    </body>
<html>


Index.html:
HTML
<html>
    <head>
        <link rel="stylesheet" type="text/css" href="./BodyStyles.css" />
    </head>
    <body class="index">
    </body>
<html>


1.html:
XML
<html>
    <head>
        <link rel="stylesheet" type="text/css" href="./BodyStyles.css" />
    </head>
    <body class="rest">
    </body>
<html>



BodyStyles.css:
CSS
body.rest {
    border-left: solid 0px blue;
    border-right: solid 0px blue;
    border-top: solid 0px blue;
    border-bottom: solid 0px blue;
    background-color: red;
}

body.doc {
    border-left: solid 2px white;
    border-right: solid 2px white;
    border-top: solid 2px white;
    border-bottom: solid 0px white;
    background-color: red;
}

body.index {
    border-left: solid 2px white;
    border-right: solid 2px white;
    border-top: solid 0px white;
    border-bottom: solid 2px white;
    background-color: red;
}


I still advice you to use the seamless frameset approach. In the codes given above I have shown you how to style your content to render the desired borders. Study the given example and use style sheets to achieve what you're after. Given this you should now be able to work work out your solution.

That's it! Try it out and play around with it ... :cool:

P.S.: This example was tested and found to be working in IE8 and FireFox 3.6.

Regards, Manfred
 
Share this answer
 
v4
Comments
Manas Bhardwaj 29-Dec-10 10:05am    
Almost :)
I think, I should have mentioned it that I want the border on DocIndex, Index Frame.
Which makes a layout like:

---------------------
Menu
|
|
|
|
-----
|

With you example, it removes all the borders :(
Manfred Rudolf Bihy 29-Dec-10 10:09am    
So why don't you remove the attributes frameborder and framespacing for that frameset then? What is your issue?

Maybe you should be more specific of what you are after.
fjdiewornncalwe 29-Dec-10 10:36am    
@Manas: Wow... Downvoting an answer because you weren't clear in your question? You've been around long enough to know better than that.
Manfred Rudolf Bihy 29-Dec-10 11:30am    
@Marcus: Thanks for your support :)
Manas Bhardwaj 30-Dec-10 3:43am    
Guys, I am not sure why both of you are after me. I did not vote yesterday, and just did. (yes, you got my 5 for all your efforts. Thanks!)

I had this idea in mind too. But this would not solve my problem either as I can not resize the frames any more.

Btw, Wish you a very Happy New Year. :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900