Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 5 Use Cases and Style Sheets

Similar presentations

Presentation on theme: "Lecture 5 Use Cases and Style Sheets"— Presentation transcript:

1 Lecture 5 Use Cases and Style Sheets
Presented By Dr. Shazzad Hosain Asst. Prof. EECS, NSU

2 Understanding Requirements
Factors on challenged software projects Reference: Chapter 5, 6 of Applying UML and Patterns – by Craig Larman

3 Use Cases

4 Use-Case Model Writing use cases – stories of using a system – is an excellent technique to understand and describe requirements. A brief format of use case

5 Casual Format of Use Case

6 Fully Dressed Example: Process Sale

7 Fully Dressed Example: Process Sale

8 Fully Dressed Example: Process Sale

9 Fully Dressed Example: Process Sale

10 Fully Dressed Example: Process Sale

11 Fully Dressed Example: Process Sale

12 Fully Dressed Example: Process Sale

13 Style Sheets It is possible to give a uniform look and feel to a web site that can easily be customized. HTML permits the mixing of document structure and formatting (style). Each element on a page has a style defined for it. The style is defined by a set of attribute : value pairs. Style attributes can control: Typeface and font properties Background properties Box-related properties List properties

14 Style Sheet Advantages
greater control over typography and page layout: specifying font families, styles, and sizes margins, indentation, box layout absolute and relative positioning. no need to use the <font> tag every time the font needs to be specified -- can be done once in the style sheet. <font> is not part of the XHTML specification

15 Ways to define styles Default style: provides values for all element properties, unless you change it. (Note: user can customize browser to change defaults!) Inline style: style is defined as an attribute of the element in-place. Defined within a tag such as <p> using the style attribute Embedded style sheet: styles defined in the head portion of web page. Use this if you don’t have very many web pages, or for styles that are useful only for the given page. Defined in head of document using <style> tag External style sheet: styles defined in a separate file. Use this to centralize style definitions and provide uniformity across all pages of a web site. Connected to an HTML document using the <link> tag or the import directive

16 Inline style syntax Defined for individual elements, at the point of use (in the HTML). Useful for “one-off” styles that are not likely to be used elsewhere. Syntax style="property: value; value;“ Examples: <p style="color: blue"> ... </p> <h1 style="font-family: arial"> ... </h1> Disadvantages: doesn't separate document structure from formatting so use sparingly, if at all

17 Several <style> tags can appear in the document head
Embedded Style Sheet <html> <head> <title>Page with embedded style</title> <style type="text/css"> selector { attribute : value ; attribute : value ... } ... </style> </head> </html> Several <style> tags can appear in the document head Style definitions go into a <style> element in document head. Selector determines what elements the style rule applies to. Style definitions separated by ; are enclosed in { } The type attribute can only be "text/css". (It is leaving room for future alternative style languages.) Note: CSS is not HTML!

18 Types of selectors Modify style of an existing HTML element (tag)
Example: h1 {font-family: sans-serif} Here h1 is the selector so all <h1> element text will appear in a sans-serif style font. Example <h1>This is a heading</h1>

19 Types of selectors Style Classes
These allow you to control which elements of a given type should use a style rule. This method has two parts: In the style sheet, the selector defines the class name, which is preceded by a period. In the HTML, the tag includes the class attribute and specifies the value of the class name Example: Define the nodec class for anchor tags: a.nodec { text-decoration : none } This suppresses the usual underlining. Use it in HTML like so: <a class="nodec" href="somepage.html">Link text</a>

20 Types of selectors a class associated with an existing HTML element (tag) Example: p.indent {margin-left: 5em} Now we can have normal paragraphs and paragraphs that are indented <p class="indent">This is an indented paragraph</p>

21 Types of selectors a class not associated with an existing HTML element (tag): can be used in any tag Example: .indent {margin-left: 2em} Now we can use this class with any block-level HTML element <h1 class="indent">This is an indented heading</h1>

22 Types of selectors A contextual selector applies to elements only if they are inside other elements. Example: p em {color: #FF0000} Now em tags will display their text in red only if the em tag is inside a paragraph tag <p>text <em>emphasis</em></p>

23 Embedded style example
<style type="text/css"> h1 { font-family: Century Gothic; font-size: xx-large;} h2 { font-family: Century Gothic; font-size: x-large;} h3 { font-family: Century Gothic; font-size: large;} p.warning {color: #FF0000} p.warning code {color: #000000} </style> style class contextual style class

24 Embedded style example
<style type="text/css"> h1,h2,h3 { font-family: Century Gothic; </style> h1 { font-size: xx-large; } h2 { font-size: x-large; } h3 { font-size: large; } same as previous example using grouping to factor out common properties

25 Embedded style example
a box style class that can be used inside any element <style type="text/css"> .box {border: 1pt; border-color: red; border-style: solid; width: 0%; margin: 1em; padding: 0.5em} </style> use it like this <pre class="box"> ... </pre>

26 Example <html> <head>
<title>Example page with embedded style</title> <style type="text/css"> body { font-family : arial narrow; color : blue; background-color : yellow } h { font-style : italic } p { font-size : 14pt } ol { font-size : 12pt; color : red; font-family : arial } </style> </head> ... </html> Here the selectors are simply tag names. The style rules will apply to elements defined by those tags.

27 External Style Sheets A style sheet can be placed in a separate file (usually named with suffix .css) and referenced by HTML files that need it. Useful for centralizing control of style and ensuring uniform appearance across many pages of a web site. The contents of the file are what would go between <style> ... </style> of an embedded style sheet. Note: this file is not HTML! The file is referenced using a <link> tag in the HTML document's head portion.

28 External style sheet syntax
/* .. */ style comments can be included selector { property1: value1; property2: value2; ... propertyN: valueN; } an external style sheet is a sequence of these rules External style sheets don't use the style tag

29 Example of style sheet Here is what an external style sheet (named style.css) could contain: /* This style sheet defines an “prgFormat" class for paragraphs that is much like block quote. */ p.prgFormat{ font-style : italic; margin-right : 2em; margin-left : 2em; } Note that there is no HTML in this file! This example also illustrates a CSS comment between /* and */ . Such comments can be placed in external or embedded style sheets.

30 Example of using style sheet
<html> <head> <title>Style Example</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> ... <p class=“prgFormat">affected text</p> ... </html> The <link> tag is used in the document head to associate an external style sheet with the document. The rel attribute specifies the relationship of the referenced file to this page. The type attribute must be "text/css". The href attribute is a URL pointing to the external style sheet.

31 <link rel="stylesheet" type="text/css" href="timetable.css“ >
td { text-align: left; vertical-align: top; font-family: Tahoma; font-size:11px; color: #E5E5E5; } a { text-decoration: underline; color: #9D5FBB; A:Hover { color : #DBACF2; text-decoration : underline; H3 { color: #7F409E; font-weight: bold; font-size : 20px; font-family: Tahoma;

32 Inheritance A descendant is an element that is enclosed (nested) in another, its ancestor. If it is an immediate descendant, it is a child of the enclosing element, its parent. Elements having the same parent are siblings. All descendants of an element inherit its style properties, unless these are overridden by their own style rules. If two styles could apply to the same element, the one defined by the more specific rule will be used. For instance, an explicit rule is always more specific than an inherited rule.

33 Compound Selectors Selectors can be defined so that a style rule applies to an element only when it is a descendant of a certain other type of element. Examples: ul ul { list-style-type : square } This specifies that an unordered list inside another unordered list will be bulleted by squares. h1 em em { color : red } This specifies that emphasized text inside emphasized text in an <h1> header will appear in red.

34 Compound Selectors Compound selectors are more specific than simple selectors. For instance, if a style sheet defines both p { color : red } div p { color : blue } then for a <p> tag that is inside a <div> element, the second rule would apply.

35 The <span> and <div> Tags
These tags are provided to allow arbitrary chunks of HTML to be treated as elements. This is usually done in order to apply style attributes to them, as in the preceding example. A <span> ... </span> element defines an “inline” structure, i.e. it simply defines a stretch of text. Thus it can be used within a paragraph or table element without affecting the flow of the text. A <div> ... </div> element defines a “block” structure. Usually the browser will place line breaks before and after this element, but otherwise it has no effect itself.

36 Span and Div example Style classes can also be “generic,” i.e. not tied to a specific element type. Example: Define the zowie class: .zowie { text-decoration : blink } Use it on an emphasized element: <div> <em class="zowie">Important!</em> /*Use it with no other style attributes:*/ <span class="zowie">Buy Now!</span>

37 Pseudo-classes These are like style classes, but an element acquires a pseudo-class by user action or by a relationship other than descendancy. In the style sheet, a pseudo-class name is preceded by a colon. In the HTML, the pseudo-class name is NOT used with the affected tag, because it is implied.

38 Pseudo-classes Link-related pseudo-classes a:link { color : red }
Applies when the link has not yet been visited. a:visited { color : green } Applies when the link has been visited. a:hover { color: yellow } Applies when the mouse is over the link.

39 Cascading Rule If two equally specific rules can apply to the same element, the one that comes last in the style sheet is used. Thus, in the example below, a:hover must follow a:link and a:visited in order to have effect, since a link can be both visited (or not) and hovering. The order of the first two doesn’t matter since they are mutually exclusive. a:link { color : red } a:visited { color : green } a:hover { color : yellow }

40 Pseudo-elements Closely related to pseudo-classes, in that they are defined by relationships, not by explicit declarations. A pseudo-element refers to a virtual element that is part of an actual element, rather than a special case of a whole element. :first-line is a pseudo-element that consists of the first line of text in a block-level element. :first-letter is a pseudo-element that consists of the first letter of the text in an element.

41 Pseudo-elements p { text-indent: 1em } p.initial { text-indent: 0 } p.initial:first-line { text-transform: uppercase } p.initial:first-letter { font-size: 24pt } This indents all normal paragraphs. A paragraph that is declared with class="initial" is not indented, and its first line appears in all capital letters, with an extra-large first letter.


Download ppt "Lecture 5 Use Cases and Style Sheets"

Similar presentations

Ads by Google