From: Benoit M. <mar...@ma...> - 2003-04-26 00:33:57
|
I agree it would be nice to have a solution that works the same in all browser. What we could do if we want the borders to be outside is basically have a Frame object. The frame object would use 4 sub layers for the borders. Which is enough for color border. Now we could offer image border, and then we would add 4 corner layers on to of the 4 borders, to be able to handle resize nicely with repeating or streching the borders without affecting the corner images. So setting a border would add a frame parent to the receiver, or may be simpler position a frame on top of the layer you set the border to. We have the code that would move the frame when you move the layer already I don't know which one of the parent or the positioned on top is better ? But both could/should be transparent to the user, and it should work the same in every browser. Benoit On Friday, April 25, 2003, at 04:16 PM, Kevin wrote: > > "Dan Willemsen" <da...@wi...> wrote: > >> On Fri, 2003-04-25 at 17:05, Raymond Irving wrote: >>> Hello Everyone, >>> >>> I'm currently trying to get the setBorder() feature to >>> work in DOM browsers the way it works in IE. According >>> to the CSS1 specs the box width includes padding, >>> margin border and the element's width. >> >> Wrong... the elements width is only the width declared, the padding >> and >> border are not added in. In the IE 5(and 6 in quirks mode) box model, >> they are added in, which makes it a real pain for css developers, I >> know, i design css sites now for the most part. Javascript is just >> extra. > > Raymond refered to box width to include margin, border, padding and > elements width. So both right. I know of the broken IE5 box model > being a real pain. > > Solution. > > 1) I like the way borders are done in dynapi for ns4. Layers for top, > bottom, left and right. So if we implement this for all browsers and > not mess with the style it would be consistent, though dynlayer width > will include border. > >>> It would seems >>> that DynLayers were design to only work with the >>> elements width. One quick solution would be to set the >>> actual element width to be less than twice the size of >>> the border. > > 2) If we mess with border style for dom browsers. For the > dynlayer size to consistent with ns4 border implementation > it''s the dynlayer width that should be set to the actual element > width plus twice the size of the border. > > I have a setBorder method that fixes the bug and should > work ok: > > p.setBorder=function(w,c,s) { > var width=w||0; > var bstyle=(typeof(s)=='string')?s:'solid'; > var bcolor=(typeof(c)=='string')?c:'black'; > this._border=width+'px '+bstyle+' '+bcolor; > this._cssBorder='border:'+this._border+'; '; > var s=this.css; > if(s) { > s.borderWidth=width+'px'; > s.borderStyle=bstyle; > s.borderColor=bcolor; > } > }; > > Just need to work out what the dynlayer w & h should be > as the w & h of a dynlayer should be the same as when > using a border (internal border layers) in ns4. > > - > Kevin > > >>> For example in dom browsers we would something like: >>> >>> p.setSize = function(w,h) { >>> ..... >>> if (cw) this.css.width = >>> (this.w-(this._border*2))||0; >>> if (ch) this.css.height = >>> (this.h-(this._border*2))||0; >>> .... >>> } >>> >>> >>> What do you think? Any other suggestions? Can we do >>> this? >>> >>> >>> -- >>> Raymond Irving >>> >>> __________________________________________________ >>> Do you Yahoo!? >>> The New Yahoo! Search - Faster. Easier. Bingo >>> http://search.yahoo.com >>> >>> >>> ------------------------------------------------------- >>> This sf.net email is sponsored by:ThinkGeek >>> Welcome to geek heaven. >>> http://thinkgeek.com/sf >>> _______________________________________________ >>> Dynapi-Dev mailing list >>> Dyn...@li... >>> http://www.mail-archive.com/dyn...@li.../ >> -- >> Dan Willemsen <da...@wi...> >> >> >> >> ------------------------------------------------------- >> This sf.net email is sponsored by:ThinkGeek >> Welcome to geek heaven. >> http://thinkgeek.com/sf >> _______________________________________________ >> Dynapi-Dev mailing list >> Dyn...@li... >> http://www.mail-archive.com/dyn...@li.../ > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Dynapi-Dev mailing list > Dyn...@li... > http://www.mail-archive.com/dyn...@li.../ > |