The Web Design Group

... Making the Web accessible to all.

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> FRAMESET with ROWS='100%,*' - need explanation, Need to understand FRAMSET created
robertl
post Oct 25 2016, 05:39 PM
Post #1





Group: Members
Posts: 2
Joined: 25-October 16
Member No.: 24,903



Hello,

I have been put in charge of some existing HTML, which will be updated to support HTML5.

One of the HTML files contains the following set of tags:

<FRAMESET ROWS='100%,*' ONLOAD='initPage();'>
<FRAME NAME='AppWindow' SRC='myAppName.html' ONLOAD='getCurrentDefaultFBColor()';>
<FRAME NAME=Controller SRC=" ".
</FRAMSET>


I do not understand the use of ROWS='100%,*' and how the 2 FRAMES would then be displayed.

When I execute this HTML, all I see is contents of myAppName.html being displayed.

Can anyone tell me the use of the 2nd FRAME?

Since HTML5 does not support FRAMESET nor FRAME, I need to determine what I should be using instead.

Thanks in Advance,

Rob
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Christian J
post Oct 25 2016, 08:47 PM
Post #2


.
********

Group: WDG Moderators
Posts: 9,653
Joined: 10-August 06
Member No.: 7



QUOTE(robertl @ Oct 26 2016, 12:39 AM) *

I do not understand the use of ROWS='100%,*' and how the 2 FRAMES would then be displayed.

When I execute this HTML, all I see is contents of myAppName.html being displayed.

The * value is used for relative lengths, together with 100% my guess is that it resolves to zero. See also http://www.htmlhelp.com/reference/html40/f...s/frameset.html unsure.gif

QUOTE
Can anyone tell me the use of the 2nd FRAME?

Judging from its NAME value it seems to load a "controller" page, whatever that means.

QUOTE
Since HTML5 does not support FRAMESET nor FRAME, I need to determine what I should be using instead.

Technically you can still use a HTML4 frameset file, and let it load HTML5 files. But since framesets have always been unpractical it's best to avoid using them. What to use instead may depend on the contents of the framed pages, and the purpose of the frameset.


User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Oct 25 2016, 09:23 PM
Post #3


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,730
Joined: 9-August 06
Member No.: 6



In practice an asterisk for only one row/column means "the rest". I don't think this was ever documented in a spec, but AFAIK all browsers do it like this, or at least they did. Normally you would have a fixed height for the upper frame, for instance rows='200,*'. Then you would get a 200 pixels high upper frame, maybe used for navigation, and the lower frame would take up the rest of the height of the browser window.

As used now the purpose must be to create a hidden frame. What the intended use is is hard to say since there is no page loaded in it. Back in the day it was common to place background music in such a hidden frame so it would play throughout the whole site without interruption as links were clicked.

I think that if you look at the bottom of the browser you'll see the border between the frames and you should be able to grab it and drag it up so you can see the lower empty frame.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Christian J
post Oct 26 2016, 07:22 AM
Post #4


.
********

Group: WDG Moderators
Posts: 9,653
Joined: 10-August 06
Member No.: 7



QUOTE(pandy @ Oct 26 2016, 04:23 AM) *

What the intended use is is hard to say since there is no page loaded in it.

Maybe the initPage() javascript function loads something there. But I don't where that function is located, maybe in the HEAD section of the frameset file?
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Oct 26 2016, 07:28 AM
Post #5


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,730
Joined: 9-August 06
Member No.: 6



Does that even work? Didn't think it did.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
robertl
post Oct 26 2016, 10:20 AM
Post #6





Group: Members
Posts: 2
Joined: 25-October 16
Member No.: 24,903



All,

That you for your feedback.

The purpose of the FRAMESET is to 'prototype' a generated HTML page. We have a utility that among other languages, it generated HTML code. Within the utility you can select 'prototype', and the HTML that has been generated is visually displayed using these HTML FRAMESET/FRAME statements. When this prototyping occurs, I am able to see whatever HTML is pointed to by 'myAppName.html' in the 1st FRAME.

As pandy pointed out, there is a border at the bottom of the browser, and if I drag that up I now see what resembles the directory content of the location of my 'myAppName.html' file. I cannot perform 'view:source' on this in the browser, since there is no HTML source associated with it.

Still, I don't know why this 2nd FRAME exists.

Looking at function initPage(), which is in 'myAppName.html', it is only responsible for firing Help or closing the App.

If I am to replace the use of FRAMESET and FRAME, what would I use?
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Christian J
post Oct 26 2016, 03:24 PM
Post #7


.
********

Group: WDG Moderators
Posts: 9,653
Joined: 10-August 06
Member No.: 7



QUOTE(robertl @ Oct 26 2016, 05:20 PM) *

As pandy pointed out, there is a border at the bottom of the browser, and if I drag that up I now see what resembles the directory content of the location of my 'myAppName.html' file. I cannot perform 'view:source' on this in the browser, since there is no HTML source associated with it.

That might be the server's default directory listing, but I can't reproduce it on my test server. My browsers just show a white space and an "about:blank" URL.

It could also be a custom directory listing generated by a server-side script (in turn perhaps loaded in the frame by javascript), but then you should be able to view source and copy its URL.

QUOTE
Still, I don't know why this 2nd FRAME exists.

Me neither. There's no documentation?

QUOTE
If I am to replace the use of FRAMESET and FRAME, what would I use?

If the second frame is not used you might remove the entire frameset and put the two onload events somewhere else, probably in myAppName.html. The latter in turn requires minor changes in the script, since you can't use two onload events at once (you might use two addEventListener instead).
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Oct 26 2016, 09:44 PM
Post #8


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,730
Joined: 9-August 06
Member No.: 6



QUOTE(robertl @ Oct 26 2016, 05:20 PM) *

If I am to replace the use of FRAMESET and FRAME, what would I use?


If this is all you have I'd say just get rid of the frames and use the pages loaded in the top frame as they are. Chances are the links won't use target and that it will work straight off.

But I'm a little confused. Do you have a site that's already based on this template? I get the feeling you don't. If so, what's the point of using the utility that generates this at all?
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



- Lo-Fi Version Time is now: 19th April 2024 - 08:04 PM