Re: [css-d] teaching float v. absolute positioning

2010-03-30 Thread Alan Gresley
Jared Stein wrote:
 Hey all, I teach web design and dev courses at the college level and often 
 steer students away from absolute positioning as a first-choice CSS layout 
 solution in favor of float.
 
 I've read John Faulds' post on the pitfalls of abs pos here 
 http://csscreator.com/node/11291 and use this as a summary of the 
 discussion for my students.  
 
 Do any of you know of other hearty debates on the matter that would 
 illuminate students who will likely enter the professional web design/dev 
 field? Other opinions not covered in the CSSCreator thread?
 
 --
 Jared M. Stein
 Director of Instructional Design Services
 Utah Valley University


I would think it is wise to explain the difference between the 
'initial containing block' and 'containing block'. The initial 
containing block is established by the viewport [1].

The containing block in which the root element lives is a rectangle 
called the initial containing block. For continuous media, it has the 
dimensions of the viewport and is anchored at the canvas origin; it is 
the page area for paged media. The 'direction' property of the initial 
containing block is the same as for the root element.

So absolutely positioned elements are offset (left, right, top and 
bottom) from this initial containing block (viewport) unless it has an 
ancestor with position relative, absolute or fixed [1].

If the element has 'position: absolute', the containing block is 
established by the nearest ancestor with a 'position' of 'absolute', 
'relative' or 'fixed.

If no offset is given, then the offset is treated as 'auto'. 
Absolutely positioned elements with offset 'auto' are positioned in 
respect to the direction of overflow. The default 'rtl' (bidirection) 
allows content to overflow the viewport to the right and bottom. For 
'ltr' the horizontal overflow works in reversed. Below are some test 
cases. Note how the body has a background of white and the html has a 
background of blue.

http://css-class.com/test/css/bidi/visible-overflow-containing-block-ltr-ap-left.htm


Things that are not mentioned in the CSSCreator Thread are the 
position of absolutely elements with offset of auto when interacting 
with inline elements [2] or floats [3]. Another is the use of absolute 
positioning for 'source ordering'. A simple construction is this.


body
   div id=content .. /div
   div id=navigation .. /div
body


body {
   margin: 0;
}
#content {
   margin-top: 100px;
}
#navigation {
   position: absolute;
   top: 0;
   height: 100px;
   width: 100%;
}



1. http://www.w3.org/TR/CSS21/visudet.html#containing-block-details
2. http://css-class.com/test/bugs/ie/calculated-offset-bug1.htm
3. http://css-class.com/test/bugs/ie/calculated-offset-bug2.htm



-- 
Alan http://css-class.com/

Armies Cannot Stop An Idea Whose Time Has Come. - Victor Hugo
__
css-discuss [cs...@lists.css-discuss.org]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/


Re: [css-d] teaching float v. absolute positioning

2010-03-30 Thread CEO, Raynham Villas


Alan Gresley wrote:

 So absolutely positioned elements are offset (left, right, top and
 bottom) from this initial containing block (viewport) unless it has an
 ancestor with position relative, absolute or fixed [1].

If it refers back to this initial containing block (viewport),
as one would expect from the normal rules of English grammar,
then I'm not clear how it can have an ancestor.

Philip Taylor
__
css-discuss [cs...@lists.css-discuss.org]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/


Re: [css-d] teaching float v. absolute positioning

2010-03-30 Thread Tim Climis
On Tuesday, March 30, 2010 7:27:36 am CEO, Raynham Villas wrote:
 Alan Gresley wrote:
  So absolutely positioned elements are offset (left, right, top and
  bottom) from this initial containing block (viewport) unless it has an
  ancestor with position relative, absolute or fixed [1].
 
 If it refers back to this initial containing block (viewport),
 as one would expect from the normal rules of English grammar,
 then I'm not clear how it can have an ancestor.
 

Mmm.  I believe he meant they to refer back to the elements.

---Tim
__
css-discuss [cs...@lists.css-discuss.org]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/


Re: [css-d] teaching float v. absolute positioning

2010-03-30 Thread Philip TAYLOR


Tim Climis wrote:

 Mmm.  I believe he meant they to refer back to the elements.

Well, that's certainly one possible interpretation :
perhaps Alan will clarify.

** Phil.
__
css-discuss [cs...@lists.css-discuss.org]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/


[css-d] teaching float v. absolute positioning

2010-03-29 Thread Jared Stein
Hey all, I teach web design and dev courses at the college level and often 
steer students away from absolute positioning as a first-choice CSS layout 
solution in favor of float.

I've read John Faulds' post on the pitfalls of abs pos here 
http://csscreator.com/node/11291 and use this as a summary of the discussion 
for my students.  

Do any of you know of other hearty debates on the matter that would illuminate 
students who will likely enter the professional web design/dev field? Other 
opinions not covered in the CSSCreator thread?

--
Jared M. Stein
Director of Instructional Design Services
Utah Valley University
__
css-discuss [cs...@lists.css-discuss.org]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/