IT350 - Web and
Internet Programming
This week you’ve learned how to
apply more consistency and functionality to a website using frames or SSI. This week, we have also read about and
discussed web site style (in the broad
sense) and design.
For this week’s lab, you will redesign the IT350 web site to make it more attractive and functional, using both frames and SSI. When complete, we will have a competition where you judge the results. Winners from each section will receive fabulous prizes, and the grand prize winner (as chosen by the instructors) will have his or her site promoted to official IT350 web site status.
Recall that different XHTML preludes will be needed for frames. You will find the following snippets helpful:
<?xml version = "1.0"
encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<?xml version = "1.0"
encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Note that this week you are not using the web pages that you previously created. Instead, create two folders on your Web drive called "Lab04frames" and “Lab04ssi” (without the quotes) and store your work in those directories.
1. Copy files: download this zipped version of the IT350 web site. Unzip these files into your Lab04frames directory. This is not a complete dump of all the IT350 files, so some of your links will be broken. However, verify that you can correctly access the following pages:
2. http://www.mXXXXXX.it350.cs.usna.edu/Lab04frames/index.html
3. http://www.mXXXXXX.it350.cs.usna.edu/Lab04frames/calendar.html
4. http://www.mXXXXXX.it350.cs.usna.edu/Lab04frames/design.html
5. Add frames to “Lab04frames”:
6. Rename Lab04frames/index.html to Lab04frames/main.html.
7. Frameset page: Create a new Lab04frames/index.html file. This will be the new main page, which must contain a <frameset> tag, and must split the resultant screen into at least two frames. One of these frames will be a navigation bar. Recall that you will need to use a different DTD/prelude in this document in order for your document to validate with a <frameset> tag.
8. Content pages: Create at least 3 different content pages to fill your frames. For instance, you might use the calendar as one content page [page 1], then split main.html into multiple pages [pages 2 and 3] (perhaps by moving some of the external resource links to a separate content page).
9. Navigation page: Create a page to act as a navigation bar. Then add links to this navigation page – all of your content pages must be accessible by clicking on links from this navigation bar. The navigation bar must remain visible after you click on a link in it (e.g., the new content should appear in a different frame).
10. Other links: Make sure there is some
link back to your main index.html page from every page (avoid “orphaned
pages”). Make sure your navigation bar
has a link back to the default set of pages (“Home”). Make sure you include an appropriate
<noframes> tag in index.html with a link to some useful page.
11. Completion: Make sure your frames work properly before you go on to the next step.
12.
Add SSI to
“Lab04ssi”:
13. In this step, you will not use frames. Instead, you will make a separate second version of the IT350 website that uses SSI instead.
14. Copy your all your files from “Lab04frames” to “Lab04ssi.”
15. Delete Lab04ssi/index.html (make sure you still have the version in Lab04frames!) Rename Lab04ssi/main.html to Lab04ssi/index.shtml. (note the shtml!)
16. Modify Lab04ssi/index.shtml to include your navigation bar using SSI. Modify your navigation page so that is appropriate to be included in another HTML file, and so that it uses CSS or a table to give the navigation links a reasonable layout.
17. Modify all your other content pages, including calendar.html, to also include the navigation bar. You’ll need to rename them to end with .shtml
18. Make sure your SSI site is working properly before you proceed.
19. Choose frames or SSI. Now that you’ve done the basics, decide whether you like your frames or SSI site better. The remainder of the lab will improve whichever one you like better.
20. Redesign: Now redesign the IT350 web site that you have in your Lab04frames OR Lab04ssi directory. Try to make it both more attractive and more functional. You have free rein to change the site in any way, including adding or combining pages, module a few restrictions:
21. Essentially all the content from the old IT350 web site must be present in the new web site.
22. You may add new content if you like, or different views of old content (e.g. to show due dates in a different way).
23. You must make use of CSS and an external stylesheet to apply some styling.
24. The final product must be suitable enough in taste and functionality that it could be used as the official IT350 web site.
Note that the calendar already uses a stylesheet named “style.css” (not the “styles.css” we used before). You can modify this stylesheet if you like or create a new one. You may also change the layout/HTML details of the calendar page, but it should still make use of some stylesheet.
25. Goals: When complete, the IT350 website should exhibit:
26. Improved functionality
27. Improved appearance
28. A consistent look
29. Final tips:
30. You are not required to add additional comments to course web pages beyond what is present already.
31. Pages that validated before (index.html) must validate in your version. Pages that did not (calendar.html) do not have to validate.
32. You must test with more than one browser!
33. Final links: Add a link from your default.htm page to Lab04frames/index.html and Lab04ssi/index.html. Clearly indicate which one you chose to re-design/add CSS.
Your web pages must be constructed using Notepad or a similar text-only editor. The use of programs such as Microsoft Word, Microsoft Frontpage, DreamWeaver, ColdFusion, Mozilla Composer, etc. will be considered an honor offense.
NOTE: some of the pages from the IT350 site (the course policy, the labs, lab guidance) were constructed with Microsoft Word. You can modify/re-create these pages if you like (still using a text editor), but it is definitely not required. These files are not included in the ZIP file but you can download them from the web if you like.
For a nominal amount of extra credit do some/all of the following:
1. A floating nav bar with SSI may not mesh well with the parts of calendar.html. Try deleting the “width=95%” that is present in the start of each table in that file.
2. You are not required to make links to things like the Course Policy, Lab Guidance, etc. work (though you can if you want). These are relative links that would work if those files were added to your website, or if your webpage was substituted for the official IT350 web page.
3. IE error: “The XML page cannot be displayed. Cannot view XML input using style sheet. Please correct the error and then click the Refresh button, or try again later.” If you get this error, try using Firefox instead. If Firefox works fine, then you can blame it on IE bug and proceed. If you want to try and fix it, try deleting all blank space and comments between your DOCTYPE declaration and the start <html> tag. I found this sometimes (but not always) corrects the problem. The problem seems to usually occur when accessing things from the file interface, not when using the web server.