LIS650lecture 2 XHTML 1.0 strict Thomas Krichel 2006-02-11.

Slides:



Advertisements
Similar presentations
Introduction to Web Design Lecture number:. Todays Aim: Introduction to Web-designing and how its done. Modelling websites in HTML.
Advertisements

LIS650 lecture 4 Thomas Krichel today Advice CSS Properties –Box properties-- List properties –Table properties-- Classification properties.
LIS650lecture 1 Major HTML Thomas Krichel
LIS650lecture 1 Major HTML Thomas Krichel
LIS650lecture 1 XML and the HTML body Thomas Krichel
LIS900C: HTML structural tags Thomas Krichel and Jeremiah C. Trinidad
LIS650lecture 2 XHTML 1.0 strict Thomas Krichel
LIS650 lecture 3 Minor HTML Information Architecture Thomas Krichel
LIS650lecture 1 XHTML 1.0 strict Thomas Krichel
LIS650 lecture 4 Thomas Krichel today Advice CSS Properties –Box properties –List properties –Classification properties Fun with selectors.
Use Tables for Layout Control Day 7. You will learn to: Understand Tables Create a Simple Table Modify Your Tables Appearance Create Page Layouts with.
HTML popo.
Web Development & Design Foundations with XHTML
CREATED BY : VIRAL M.KORADIYA. Anchor elements are defined by the element. The element accepts several attributes, but either the Name or HREF attribute.
Internet Services and Web Authoring (CSET 226) Lecture # 5 HyperText Markup Language (HTML) 1.
KompoZer. This is what KompoZer will look like with a blank document open. As you can see, there are a lot of icons for beginning users. But don't be.
HTML/XML XHTML Authoring. Creating Tables  Table: An arrangement of horizontal rows and vertical columns. The intersection of a row and a column is called.
Tutorial 4: Designing a Web Page with Tables
XHTML and CSS Overview. Hypertext Markup Language A set of markup tags and associated syntax rules Unlike a programming language, you cannot describe.
© 2004, Robert K. Moniot Chapters 4 & 5 Introduction to HTML, More Details.
XHTML1 Tables and Lists. XHTML2 Objectives In this chapter, you will: Create basic tables Structure tables Format tables Create lists.
Unit 2, cont. September 14 HTML,Validating your pages, Publishing your site.
Creating a Web Page with Tables. Objectives Create a text table with preformatted text Create the basic structure of a graphical table Organize table.
XP Creating Web Pages with HTML Using Tables. XP Objectives Create a text table Create a table using the,, and tags Create table headers and captions.
 2008 Pearson Education, Inc. All rights reserved. 1 Introduction to HTML.
Using HTML Tables.
The Power of Tables They aren't just for sitting stuff on anymore...
Chapter 5 Working with Tables. Agenda Add a Table Assign a Table Border Adjust Cell Padding and Spacing Adjust Cell Width and Height Add Column Labels.
HTML Tags. Objectives Know the commonly used HTML tags Create a simple webpage using the HTML tags that will be discussed.
HTML. Goals How to use the Komodo editor HTML coding and testing – List and Images – Tables and Links – At least 2 pages and navigation –
CpSc 462/662: Database Management Systems (DBMS) (TEXNH Approach) HTML Basics James Wang.
CS105 Introduction to Computer Concepts HTML
Headings, Paragraphs, Formatting, Links, Head, CSS, Images
Dr. Nuha El-KhaliliInternet Programming ( ) HTML Hyper Text Markup Language The language of web pages Maintained by the W3C
Chapter 4: Hypertext Markup Language Primer TECH Prof. Jeff Cheng.
 2008 Pearson Education, Inc. All rights reserved Introduction to XHTML Pt. 2.
10/4/2015Tables1 Spring, 2008 Modified by Linda Kenney 4/2/08.
CP476 Internet Computing Lecture 7 HTML 1 What is HTML? HyperText Markup Language (HTML) is an application of Standard Generalized Markup Language (SGML)
CNIT 132 – Week 7 HTML - Tables. Tables on the World Wide Web A table can be displayed on a Web page either in a text or graphical format. A text table:
A Basic Web Page. Chapter 2 Objectives HTML tags and elements Create a simple Web Page XHTML Line breaks and Paragraph divisions Basic HTML elements.
Web Technologies COMP6115 Session 2: Planning, Designing, Constructing and Testing Static Web Sites Dr. Paul Walcott Department of Computer Science, Mathematics.
CS105 INTRODUCTION TO COMPUTER CONCEPTS HTML Instructor: Cuong (Charlie) Pham.
Designing a Web Page with Tables. A text table: contains only text, evenly spaced on the Web page in rows and columns uses only standard word processing.
 2008 Pearson Education, Inc. All rights reserved Introduction to XHTML.
HTML: Hyptertext Markup Language Doman’s Sections.
XHTML 1.1  Derived from Standard Generalized Markup Language (SGML) of ISO  XHTML concerned primary with content rather than presentation and style 
4 Chapter Four Introduction to HTML. 4 Chapter Objectives Learn basic HTML commands Discover how to display graphic image objects in Web pages Create.
Ali Alshowaish. What is HTML? HTML stands for Hyper Text Markup Language Specifically created to make World Wide Web pages Web authoring software language.
LIS650 lecture 2 Thomas Krichel today is tough tables characters reexamining our.
HTML Basics Computers. What is an HTML file? *HTML is a format that tells a computer how to display a web page. The documents themselves are plain text.
CSE 409 – Advanced Internet Technology 1 DISCUSSION OF BASIC HTML TAGS.
HTML Basics. HTML Coding HTML Hypertext markup language The code used to create web pages.
HTML HYPER TEXT MARKUP LANGUAGE. INTRODUCTION Normal text” surrounded by bracketed tags that tell browsers how to display web pages Pages end with “.htm”
XP Review 1 New Perspectives on JavaScript, Comprehensive1 Introducing HTML and XHTML Creating Web Pages with HTML.
What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language HTML is not a programming language, it is a markup.
20-753: Fundamentals of Web Programming 1 Lecture 6: Advanced HTML Fundamentals of Web Programming Lecture 6: Advanced HTML.
Department of Computer Science, Florida State University CGS 3066: Web Programming and Design Spring
LINKING WEBPAGES USING HTML HYPERLINKS. Hyperlinks are text strings or images on a webpage which when clicked on, links to another section in the same.
CHAPTER TWO HTML TAGS. 1.Basic HTML Tags 1.1 HTML: Hypertext Markup Language  HTML stands for Hypertext Markup Language.  It is the markup language.
`. Lecture Overview HTML Body Elements Linking techniques HyperText references Linking images Linking to locations on a page Linking to a fragment on.
Department of Computer Science, Florida State University CGS 3066: Web Programming and Design Spring
1999, COMPUTER SCIENCE, BUU Introduction to HTML Seree Chinodom
Building a Website: Layout Fall Overall Structure: Home Page Title Section Title Frame Picture UNCP Math Menu Content Footer Contact Information.
INT222 – Internet Fundamentals
Building a Web Page. A Brief History In 1989, Tim Berners-Lee invented the Web. To enable particle physics from around the world to organize and share.
01 – HTML (1) Informatics Department Parahyangan Catholic University.
Working with Tables: Module A: Table Basics
Using Cascading Style Sheets Module B: CSS Structure
WEBSITE DESIGN Chp 1
Introduction to HTML.
Presentation transcript:

LIS650lecture 2 XHTML 1.0 strict Thomas Krichel

HTML HyperText Markup Language HTML is an SGML DTD –Head, Title, Body, Paragraph, etc. –Headings, Bold, Italic, etc. –Table, List, Image, etc. –Links to other documents –Forms –and many others

HTML history HTML was a very bare-bones language when first invented by Tim Berners-Lee. It did not describe pages with much of a visual appeal. In the 90s, successful browsers invented extensions that aimed to stretch the visual boundaries of HTML. Some of these extensions found their way in the official HTML spec issued by the W3C. Later the W3C developed style sheets as a way to accommodate for display requirements without having to extend HTML.

HTML versions HTML 4.01 is the last version of HTML This version has two different DTDs: –the loose DTD –the strict DTD I only the cover the elements of the strict DTD. The loose DTD has more elements, but all the functionality of these elements is best done with style sheets. Thus, the pages created with HTML only will look rather boring. But we do cover style sheets later.

XHTML XHTML is HTML written in an XML syntax. Every XHTML document has to be well-formed XML. Non-XML HTML documents can violate some well-formedness constraints, including –HTML element names are not case sensitive. –Some HTML elements do not need closing tags. –There is no need for a single root element in a HTML document. XHTML does not allow any of this.

XHTML: pain without gain? In this course we study XHTML. When I say HTML in the following, I mean XHTML. Reasons to study XHTML rather than HTML –The syntactic rules of XML are easier to understand. –Any tool that can work with XML can be applied to XHTML, but can not be applied to HTML. –In general XML documents are more computer understandable. This is crucial in the age of the search engine.

notation in the course slides I write elements as if I was writing the start tag I write all empty elements as. Recall that is not the same as I attach a = to all attribute names. Thus, when I write id=, you know that I mean the id attribute.

validation Remember that your pages have to validate against the strict specification of XHTML. You have to quote the DTD declaration for the strict version of the XHTML DTD in the prologue of your HTML file, so that a validation tool can find out what version of XHTML to check for.

validation tools The W3C validator is the official validator that I have built into validated.html. This is the one used for assessing. The Web Design Group Validator at is a nice, seemingly more strict validator that lets you validate your entire site.

the root element It has two optional attributes –the dir= attribute says in which direction the contents is rendered. The classic value is "ltr", "rtl" is also valid. –the lang= attribute says in which language the contents is. Use ISO 639 codes, e.g. lang="en-us" –these two attributes are know as the internationalization (i18n) attributes. Example: …

children of has only two children – has the header of the document. This is information that is not displayed on the document window. It is not part of the document as displayed, but it is about it. – contains the document itself. This is displayed in the browser window.

required: the in This is a required child of. It defines the title of the document. This is a required child of. It must only contain one character data node. It takes the i18n attributes. Example Starting a limerick There was a young friar named Tuck

usability concerns with The title is used by the user agent in a special manner –as bookmark default title –as the title for a window in which the user agent runs Google uses the title as anchor text to your web page. –It is a crucial ad for your page –Google may truncate the title. Bad ideas for titles –section 1 – home page

optional: the in This can be used to include metadata in the header. It has an attribute "name" for the property name. It has an attribute "content" for the property values. It also takes the i18n attributes. Example: is always an empty element.

The description meta name is the one that I think is being used by Google. When the query matches a page in a good way, the description appears in the snippet of the result, despite the fact that the description is not visible on the web page. An example is available by searching Google for Thomas Krichel.

the http-equiv= attribute to The http-equiv= tells the client to behave as if a http header had been received. Example: will tell the server to tell the browser that the page is written in HTML with shift_jis encoding. This is useful when your page is read without http headers, for example from your local disk.

scheme= attribute of You can give a scheme attribute to. Its content can be a name string, that the user agent may be able to do something with Or it can be a URI, where the user agent may find something to do. But there is no standard way to do things.

optional: the in Can fix the baseline URL for all the relative links in the document. This URL is given in the href= attribute to base. This attribute must be present. Within the confines of what we are working with, I do not see a reason for you to use it. Example

optional: the in appears in the of the page. It creates a link between the current page and others. It takes the href= attribute to say what page is being pointed to. It takes a rel= attribute for forward link and rev= for the reverse link. There is only a limited vocabulary of values to these attributes that is allowed.

rel= and rev= rel has the relation of the pages named in href= with the current page. rev has the relation of the current page with the page named in the href= attribute. Example: –Consider two documents A and B. Document A: –Has exactly the same meaning as: Document B:

values of rel= and rev= attributes The possible values of rel= and rev= are –"alternate" – "stylesheet" !! –"start" – "next" –"prev" – "contents" –"index"– "glossary" –"copyright" – "chapter" –"section" – "subsection" –"appendix" – "help" –"bookmark"

other attributes to It takes the type= attribute for the MIME type of the page linked to. It takes the hreflang= attribute to give the language of the page linked to. It takes the charset= attribute to give the character set of the page being linked to. It takes the media= attribute to give the media for the page being linked to. Use the CSS media types, covered in the next lecture.

and search engines Using you can give search engine things like –Links to alternate versions of a document, written in another human language. –Links to alternate versions of a document, designed for different media, for instance a version especially suited for printing. –Links to the starting page of a collection of documents. I am not sure if current engines use this.

Opera navigation toolbar There is an opera toolbar that will implement relationships using. In Opera activate with view/toolbar/navigation bar. If this more widely spread you could see, say, a button in the browser that takes you to the homepage of the site, rather than having to search this on every page.

what is rendered: This encloses the contents of the page as opposed to its header. Validation requires one and only one body. It takes the i18n attributes, as well as some others that we will discuss now. These fall into a another group of attributes we call core attributes. We will study those core attributes now.

core attributes: id= This attribute assigns a name to a element. This name must be unique in a document. The id= attribute has several roles in HTML, including As a style sheet selector As a target anchor for hypertext links

core attributes: class= The class attribute is a friend of the id= attribute. It assigns one or more class names to a element. –Class names are separated by blanks, e.g.... – The element may be said to belong to these classes. A class name may be shared by several elements. The class= attribute has several roles in HTML, but it is most useful as a style sheet selector, when you want to assign style information to a set of elements.

example for class= and id= There was a young man from Peru Whose limericks stopped at line two. OK, that's a stupid limerick. Let us look at another There was a young man from Japan Whose limericks would never scan And when they asked why He said "It is because I Try to put as many words into the last line as I possibly can."

core attributes: title= The title= attribute sets a title in use with the element. There is no prescribed way in with the title is being rendered by a user agent. Sometimes it is shown as a tool tip, i.e. something that flashes up when the mouse is rolled over it. Example: Thomas Krichel

core attributes: style= Use the style= attribute to give style information to a particular element. This will be more discussed when we do the style sheets. Usually there are better ways to attach style information then writing it onto every element. It is better to place the tag into a class by giving them the same class= attribute, and then give style sheet information for the class. See validated.html for an example.

summary: core attributes To summarize, we have a group of core attributes. These attributes can be used with almost all elements. There are other attributes that can be almost universally used, called event attributes, but they have to do with scripting. We may study them later in this course.

block-level vs text-level elements Block-level elements contain data that is aligned vertical by visual user agent. Text-level elements are aligned horizontally by visual user agents. The reasons behind this distinction –Block level can contain other block level elements and text-level elements. –Text-level elements can not contain block-level elements. –Visual user agents start a new line at the beginning of block-level elements. –Multidirectional text would be impossible without it.

vertical divisions and The elements allows you to set arbitrary block level divisions in your document. It takes the core and i18n attributes. RULE: put all your contents that is vertically aligned into a. The tag is like but it signals the start and end of a paragraph. These elements are block-level element.

the line break This element used to create a line break. Note its emptiness! Takes core and i18n attributes. If you want to do several line breaks you can do it with but this is horribly ugly! is a text level element.

horizontal divisions This is another element for arbitrary divisions, but it operates on inline content. This is contents that is put in lines horizontally, rather than block- level contents, that is put in vertically. Admits core and i18n attributes. Put things in a that belong together in a line. This is a text-level element.

example A worse poet however was J enny. Her limericks werent worth a P enny Though the invention was s ound She always f ound That, whenever she tried to write any She always had one line to m any.

abstraction ends here Up until now, we have done a lot of abstract elements and attributes that do not achieve much visual impact. Instead, they –point the style sheet to where things are –create a semantic design We will now turn to more physical descriptions. Try it out while I am talking.

the anchor: Opens a hyperlink The contents of element is the anchor. can have element contents. The href= attribute has the target URI. Example My professor is Thomas Krichel.

linking to other files on wotan If you want to link to a page that you already have in your public_html folder on wotan, you simply quote the name of the file second page Please give all the HTML files the ending.html. Avoid blanks, as well as other exotic characters in file names. Instead of blanks, use underscores.

linking within a document If the id= attribute of an element in a document at a URL URL is set to id, you can make the element the target of a link. You use the URL URL#id for this purpose. If the document linked to is the current document, you dont need to mention its URL. example: valid links to the element with id "validator" in Thomas Krichel's homepage.

rel= and rev= with It takes the rel= attributes to specify the relationship between the current document and the link target, as well as the rev= attribute to specify the reverse. It uses the name link types as. Examples – © – по русскйи Note that search engine support for this is limited.

other optional attributes to takes the core and i18n attributes. The hreflang= has the language of the target. The type= attribute gives the MIME-type of the target. There are other attributes for which we have no use –coords–shape–accesskey–tabindex

images: Images are referenced in the web page. The required src= attribute says where the image is. The required alt= attribute gives a text to show for user agents that do not display image. It may be shown by the user agents as the user highlights the image. It is limited to 1024 characters. alt= can be empty. The longdesc= attribute. Its value is the URL of a file with a long description of the image. Example:

more on You can have the user agent resize the image –width= attribute gives the user agent a suggestion for the width of the image. –height= attribute gives the user agent a suggestion for the height of the image. Both attributes can be expressed –in pixels, as a number –in %age of the current display width takes the core and i18n attributes.

setting the resolution If you set height= and width= to the exact size of the picture, you make it easier for the user agent to render it. It can render the page even though it may not have downloaded the picture. If you set it to something different, the user agent may (and in practice, does) scale your picture. The scaled picture looks ugly and scaling takes time. It is best to size your pictures using a dedicated picture manipulation software such a gimp.

HTML checking validated.html has some code that we can now understand. <img style="border: 0pt" src=" alt="Valid XHTML 1.0!" height="31" width="88" /> click on the icon to validate your code.

header elements Headers to All are block-level elements. Vary text size based on the headers level. Actual size of text of header element is selected by browser. Results can vary significantly between user agents. All take the core and i18n attributes.

horizontal rule with It creates a horizontal rule. It takes the core and i18n attributes. Other attributes have been deprecated, i.e. are allowed in the loose DTD but not the strict one.

contents-based style elements encloses abbreviations encloses acronyms encloses citations encloses computer code snippets encloses things being defined encloses emphasized text encloses text typed on a keyboard encloses literal samples encloses strong text encloses variables all take the core and i18n attributes

physical style elements encloses bold contents encloses big contents encloses small contents encloses italics contents encloses subscripted contents encloses superscripted contents encloses typewriter-style contents All take the core and i18n attributes.

preformatted contents: Normally, HTML is rendered with newline characters changed to space and multiple whitespace characters collapsed to one. encloses contents that is to be rendered with white spaces and and line breaks just like in the source text. Monospace font is typically used. Markup is still allowed, but elements that do spacing should not be used, obviously. It takes the core and i18n attributes.

quoting with and quotes a paragraph. make a short quote inside a paragraph. Both takes a cite= attribute that take the value of a URL of the source of the quote. They also take the core and i18n attributes.

list elements creates an ordered list. – encloses each item unordered list – encloses each item encloses a definition list – encloses the term that is being defined – encloses the definition All take the core attributes and the i18n attributes.

ordered list example The largest towns in Saarland are Saarbrücken Neunkirchen Völklingen Saarlouis

unordered list example The ingredients for Dibbelabbes are potatoes onion lard eggs garlic leeks oil (for frying)

definition list example Here are some derogatory terms in Saarland dialect. Traanfunsel a slow person Labedudelae a lazy and badly organized person without accomplishments Schmierpiss a person of poor body hygiene

tables HTML allows to align contents is tabular form. Tables may have a caption and/or a summary. –Both describe the table. –The latter is longer than the former. Table rows are aligned vertically. Table columns are aligned horizontally. Cells are at the intersection between rows and columns.

table illustration A table is a matrix formed by the intersection of a number of horizontal rows and vertical columns. Column 1 Column 2 Column 3 Row 1 Row 2 Row 3 Cell A table is a matrix formed by the intersection of a number of horizontal rows and vertical columns. Column 1 Column 2 Column 3 Row 1 Row 2 Row 3 Cell

HTML table design It tries to make simple things simple without making sophisticated things impossible It takes account of the fact that the absolute width of the table can not be controlled by the HTML writer but it is the hands of the reader. Not all things one would like to do are supported. Sometimes tables can lead to excessive scrolling. Use of style sheets is recommended when the table has mainly a visual function. See Thomas old homepage for a bad example.

elements & attributes not covered Many points in the table spec of HTML have one or more of the following attributes –mainly important for non-visual rendering –complicate & abstract –little used –mainly a verbosity reduction feature So I am omitting some of them in the discussion.

more table talk that is not covered Table rows may be grouped into –head section –body section –foot section Table columns may also be grouped into more arbitrary ways in so-called column groups. Table cells can contain –header information –table data

the element It encloses a table. It takes the core and i18n attributes. The summary= attribute provides a summary of the table's purpose and structure for user agents rendering to non-visual media such as speech and Braille. The width= attribute specifies the desired width of the entire table. It is intended for visual user agents. When the value is a percentage value, the value is relative to the user agent's available horizontal space.

the frame= attribute of This attribute specifies which sides of the frame surrounding a table will be visible. Possible values: –"void" no sides. This is the default value. –"above" the top side only –"below" the bottom side only –"hsides" the top and bottom sides only –"vsides" the right and left sides only –"lhs" the left-hand side only –"rhs" the right-hand side only –"box" all four sides –"border" all four sides

the rules= attribute of This attribute specifies which rules will appear between cells within a table. Possible values –"none" no rules. This is the default. –"groups" rules between row groups only. –"rows" rules between rows only. –"cols" rules between columns only. –"all" rules between all rows and columns

the border= attribute of This attribute sets the width of the frame of a table, if it is set to be visible. The value can only be a pixel number. Rules and frames can make for visual noise.

the element It is used to give a caption to the table. It takes the core and i18n attributes. It is only allowed immediately after the tag start. There can only be one in any one. We will now study the alignment attributes. This is an attribute group widely used in tables. also takes those attributes.

alignment: the align= attribute The align= attribute specifies the alignment of data and the justification of text in a cell. Possible values: –"left"left-flush data or left-justify text. This is the default value for table data. –"center"center data or center-justify text. This is the default value for table headers. –"right"right-flush data or right-justify text. –"justify"double-justify text –"char"align text around a specific character as set with a "char" attribute

alignment: the valign= attribute The valign= attribute specifies the vertical position of data within a cell. Possible values: –"top" Cell data is flush with the top of the cell. –"middle" Cell data is centered vertically within the cell. This is the default value. –"bottom" Cell data is flush with the bottom of the cell. –"baseline" All cells in the same row as a cell whose valign attribute has this value should have their textual data positioned so that the first text line occurs on a baseline common to all cells in the row. This constraint does not apply to subsequent text lines in these cells.

alignment: char= and charoff= The char= attribute specifies a single character within a text fragment to act as an axis for alignment. The default value for this attribute is the decimal point character for the current language as set by the lang= attribute. The charoff= attribute specifies the offset to the first occurrence of the alignment character on each line. If a line doesn't include the alignment character, it should be horizontally shifted to end at the alignment position. The direction of offset is determined by the current text direction, as set by the "dir" attribute. (obscure)

alignment: cellspacing= The cellspacing= attribute specifies how much space the user agent should leave –between the left side of the table and the left-hand side of the leftmost column –between the top of the table and the top side of the top row, –between the right side of the table and the right-hand side of the right most column –between the bottom of the table and the bottom side of the last row –The attribute also specifies the amount of space to leave between cells.

alignment attributes: cellpadding= Does the same as cellspacing, but gives the distance between the border of the cell and the and the contents. Note that cellpadding= and cellspacing= can only one length. –if it is pixel, horizontal and vertical dimensions are the some –if it is a percentage, horizontal and vertical space are different as the percentage is applied to the

the table rule It encloses a table row. It takes the alignment attributes. It takes the i18n attributes. It takes the core attributes.

the table cell It encloses a cell in a table that is not a header cell. It admits the alignment, core and i18n attributes It has an abbr= attribute for abbreviated contents. Its rowspan= and colspan= attributes say how many rows or columns the cell spans. It has a headers= attribute specifies the list of header cells that provide header information for the current data cell. The value of this attribute is a space-separated list of header cell id= attribute values. (you can ignore this) It takes an axis= attribute, whose purpose is so abstract that I will not cover it here.

the header cell It encloses a header cell It admits the same attributes as, but headers= does make no sense here. Instead, we have a scope= attribute that specifies the set of data cells for which the current header cell provides header information. It can take the values –"row": The current cell provides header information for the rest of the row that contains it. –"col": The current cell provides header information for the rest of the column that contains it. –"rowgroup": The header cell provides header information for the rest of the row group that contains it. –"colgroup": The header cell provides header information for the rest of the column group that contains it.

example by Lesk (1976)

Lesk's most famous

Please shutdown the computers when you are done. Thank you for your attention!