Midterm Review

advertisement
Midterm Review
The following are important topics that will mainly be covered on the midterm taking place October
22nd 2013. Other than the items listed in the Things that won’t be on the test section, everything that
has been discussed/performed in lectures, assigned reading, homework assignments, and quizzes IS
FAIR GAME.
The format of the Midterm will be close to the following:
1.
2.
3.
4.
5.
~10% - True or false
~20% - Multiple Choice
~10% - Short Answer
~40% - Coding
~10% - Design. You will critique the planning or testing phase of a sample UI Design problem.
Obviously the above percentages don’t add up to 100%. There will be variability with each section hence
the tilde.
Markup language
1. Understand the core terminology used by markup languages (root, element, attributes, data,
doctype).
2. Be able to create a tree to represent XML and HTML document.
3. Understand DOM Tree terminology (ancestor, descendant, parent, child, sibling).
HTML
1. Understand the purpose and importance of HTML in web technology.
2. Know how and when to use id and class attributes.
3. Understand the basic HTML elements and their usage.
Forms
1. Know how to implement a well implemented functioning form using the following components:
a. Text input
b. Labels
c. Hidden input
d. Radio Button Groups
e. Checkbox Groups
f. Submit Button
2. When a form is submitted, understand which controls become “successful” and how form data
is bundled up by the processing agent and is sent to be processed for both POST and GET
methods (See HTTP Lecture).
3. Know the action and method attributes of the form element and their usage.
HTTP
1. Know the 4 main HTTP Request Methods we discussed in class and how to use them properly.
CSS Survival Sheet
1. How do I calculate the specificity for a selector?
For example, the specificity for the following selector is 0, 1, 2, 1
#titleBar .special a:hover
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Box Model
Every element is a box.
The width and height css properties only affect the element’s content not the element’s total
box dimension.
Padding cannot have negative values.
Padding provides empty space between the box’s border and content.
You can see the background color of the element’s box beneath the padding.
It is possible to see the background color of the element’s box beneath the border
Margins can have negative values.
It is IMPOSSIBLE to see the background color of the element’s box beneath the margin.
Use margins to center a block element inside its parent
a. Specify width for content
b. Give margin-left and margin-right properties a value of auto
Vertical margins are ignored on inline elements.
Adjoining vertical margins can collapse.
a. Two adjacent elements with positive margins will collapse and share the larger specified
margin.
b. Two adjacent elements with one positive and one negative margin will collapse and
share a margin that is the summation of the two.
c. A parent element with no border or padding, will collapse margins with a child element
and share the larger of the two margins
All display block elements, by default, grow to fill their parent’s width.
The computed dimension of an element is equal to:
a. margin + border + padding + (width | height)
Display
15. What visually happens when you change a display:block element’s display to inline?
16. What visually happens when you change a display:inline element’s display to block?
17. What visually happens when you change an element’s display to none?
18.
19.
20.
21.
22.
23.
24.
25.
Float
Float elements with display:block behave like they are display:inline.
Float elements’ vertical margins will not collapse.
Float elements are considered out of the flow.
Float is different from absolute positioning because float affects the position of its sibling
elements.
Position
What does position:static mean? Is the element’s space that it would normally take filled? Is the
element in or out of the flow?
What does position:relative mean? Is the element’s space that it would normally take filled? Is
the element in or out of the flow?
What does position:absolute mean? Is the element’s space that it would normally take filled? Is
the element in or out of the flow?Absolutely positioned elements are placed in relationship to
what?
An absolutely positioned element with top, left, right, bottom properties set with a value of auto
will appear like they normally would as if they were postion:static. Aka they appear in their
normal position, but may get overlapped by the next sibling.
CSS Selectors
1. Know how to select elements based on the following:
 Anything
 Elements
 Elements with attributes
 ID
 Class
 Attribute ([class*=frog])
 Adjacent Sibling (+)
 Children (>)
 Descendants
 State (:active, :hover, :focused, etc.)
 :first-child
2. Be able to precisely explain what a CSS selector is selecting. Use Selectoracle for practice. For
example,
body > ol > li p
Selects any p element that is a descendant of a li element that is a
child of an ol element that is a child of a body element.
Javascript
1. Know how to do basic javascript programming.
2. Know how to create Objects in javascript.
a. var student = { “name” : “Henry”, “lastname”: “Wiggum”, “age” : 21 }
3. Know how to make a JSON object and how to convert a JSON string to an object.
4. Know everything that we covered in the lecture about DOM and the DOM API.
5. Know how to create DOM 0 and DOM 2 events
 onclick = function(e) { alert(“click”);}
 addEventListener(‘click’, function (e) { alert(‘click’); }, false);
6. Know how to remove DOM 0 and DOM 2 events
 onclick = null;
 removeEventListener(‘click’, function(e) {alert(‘click’);}, false);
7. Know the important event interface variables
 type
 target
8. Know how to use preventDefault()
9. Know how to do XMLHttpRequests
jQuery
1. Know the difference between the javascript window.onload event and the jQuery
$(document).ready() event.
2. Know how to use jQuery to select elements from an HTML document using the selector method
(know all CSS selectors mentioned above) and filter methods.
3. Know how to use jQuery’s css shorthand methods width, height, innerHeight/Width,
outerHeight/Width, etc. that were discussed in lecture.
4. Know how to use the .css() to set and get single and multiple properties.
5. Be able to use jQuery events.
6. Be able to create custom animations.
Design
Understand and be able to perform/create





User Profiles
Task analysis
Finding functionality
Objects/actions analysis
Usability Testing
Things that won’t be on the test





Regular Expressions
10 Principles of Design
Gestalt Principles
CSS3
From the jQuery lecture: data, precanned jQuery animations, ajax, UI
Download