生活指南——让生活变得更简单

html盒子定位方式_web前端盒子定位

课程:

web前端如何让网页布局稳定性和标准性

为了实现网页布局的稳定性和标准性,我们可以从下面几方面努力:

一、 !DOCTYPE 标记的重要性。

位 于文档的最前面,用于向浏览器说明当前文档使用哪种 HTML 或 XHTML 标准 规范,我们必需在开头处使用!DOCTYPE标记为 所有的XHTML文档指定XHTML版本和类型,只有这样浏览器才能将该网页作为有 效的XHTML文档,并按指定的文档类型进行解析。

!DOCTYPE 标记和浏览器的兼容性相关,删除!DOCTYPE,就是把如何展示HTML页面的权利交给浏览器, 这 时,IE6,IE7,IE8,Firefox2,Firefox3,Chrome,有多少种浏览器,页面就有可能有多少中显示效果,这是不被允许的。

二、合适地方用到合适的标签

物尽其用人尽其才。 再合适的地方用到合理的标签,对网页布局和优化都有很多的好处,比如logo ,一般我们都用h1 标签包括。 还有理解行内元素和块级元素的区别。

一个页面不要只用div,太多反而太泛滥了。table虽然用的少,但是,再做一些数据处理的时候,还是比较好用的。

三、站在标准流的角度看padding 和 maring 、width等属性稳定性

我们知道页面布局的时候,控制盒子位置距离等,有盒子本身大小,padding和margin来做。

因此,再这里我们会根据稳定性来看这三者的先后顺序:

其中稳定性最好的就是盒子本身的高度和宽度了,我们优先考虑这个。 因此,很多情况下,我们会考虑利用高度剩余法,宽度剩余法来做,而不是padding和margin。

这个评论和下面的文本域框有个小距离, 此时,我们给这个评论一个h2标签,高度正好从评论上方,到文本域上的高度就好了。

h2 里面文字内容默认是靠左上对齐的,高度用不了,就剩下了,这就是高度剩余法。

其次,我们才考虑padding ,因为padding也可以看做特殊的盒子高度和宽度,最后我们再用margin来做。因为margin会有边距合并的问题。

四、标准流、浮动流和定位的稳定性

标准流再里面是最稳定的,就是块级元素上下显示,行内一行显示,都是最稳定的。

浮动和定位都“脱标”了,稳定性没那么稳定,所以,我们应该遵循如下原则:

页面布局,能用标准流去做的不用浮动去做,如果要用浮动做的,就不用定位去做。

五、知己知彼百战百胜

总会有特殊的浏览器,比如ie6 ,这些奇葩浏览器总是有自己独到的地方,那我们怎办? 兵法云,知己知彼百战百胜,因此,需要我们详细的了解这些浏览器自己独特的特性,或者掌握他们ie6常常出现的bug,以及对于css 的理解,那么我们根据他们的不同解析,写出合理的布局。

六、不要让清除内外边距带来麻烦

html, body, ul, li, ol, dl, dd, dt, p, h1, h2, h3, h4, h5, h6, form, fieldset, legend, img { margin:0; padding:0; }

这句话,大家都知道,清除浏览器样式的。但是如果你不加,不同浏览器肯定显示不太一样。所以,css的第一句话就是它。还有就是要使用大部分浏览支持的css属性不至于引起不必要的麻烦。

web前端如何定位和扩展一个插件组件

这个插件具体是干什么,哪一层

例如中间件,一般都是假设一个请求过去,在这个过程中会有无数的handle,这个传递的对象是什么样的,怎么去处理这个过程中的数据,这个是中间件

插件则有很多,UI插件,数据插件等

如果要准备插件首先是数据接口规范,然后是API规范,例如jquery的扩展方法,或者angularjs的指令,这些都是API规范

还有core,这个就像amd规范之类的

如果楼主是指大型架构,我建议可以参考下android的概要架构图来理解,其实原理类似的

web前端当绝对定位在相对定位里面时,绝对定位可以

1.定位的专业解释

(1)语法

position:static|absolute|fixed|relative

(2)说明

从上面语法可以看出,定位的方法有很多种,它们分别是静态(static),绝对定位(absolute),固定(fixed),相对定位(relative)。在这个教程里,我不逐一讲,只讲最常用也是最实用的两个定位方法:绝对定位(absolute)、相对定位(relative)。

绝对定位(absolute):将被赋予此定位方法的对象从文档流中拖出,使用left,right,top,bottom等属性相对于其最接近的一个最有定位设置的父级对象进行绝对定位,如果对象的父级没有设置定位属性,即还是遵循HTML定位规则的,则依据body对象左上角作为参考进行定位。绝对定位对象可层叠,层叠顺序可通过z-index属性控制,z-index值为无单位的整数,大的在最上面,可以有负值(目前负值FF不支持)。

相对定位(relative):对象不可层叠,依据left,right,top,bottom等属性在正常文档流中偏移自身位置。同样可以用z-index分层设计。

2.定位的形象解释

我先来架设一个虚拟的场景:有一个矩形的房间,里面还有一个水桶装了些水,水里还浸泡着一个西瓜,这个房间半空中还有不少的钩子用于挂东西用。现在我把网页元素与上面物件对应上,那么房间就是一个网页,水桶是网页中的一个板块,桶中的水就是文本流,西瓜就是将要被定位的对象。

(1)贡献的绝对定位(absolute)

对照前面解释,如果西瓜被赋予绝对定位,那么就等于把西瓜从水中捞起来挂在半空中的钩子上,水桶中西瓜原来占用的空间水会自动填补它(绝对定位对象会让出自己原先占用位置,所以说它是贡献的)。此时如果之前没有对水桶进行定位设定,那么被拿起的西瓜位置不会再受水桶位置影响,水桶怎么移动,西瓜还是挂在原来位置,至于西瓜要怎放,则以房间左上角(body左上角)为准,用left,right,top,bottom值来定位。

但是如果水桶也给出了定位设置(通常是相对定位,下面有讲到这一实用技巧),此时西瓜的摆放就没有那么自由了,尽管此时西瓜被拿起来了不会影响水桶中的水(文本流),但它还是要听桶的话,桶会告诉西瓜“你可以活动,但应该在我的范围内走动,比方说我要你在我左上方1米处,你就要跟死这一点,我走你也要跟着走”,如果桶中有很多个西瓜,可以全部拿出来吊到半空中,它们将被安排在不同高度的空间(层),所以在房顶垂直往下看,有可能看到不同西瓜层叠在一起的情况(这个所谓的高度在网页中是不存在的,就像FLASH动画中的不同层上安排了元素,但它们在看时不会有深度感觉)。可见绝对定位的对象参考目标是它的父级,专业称之为包含块。

(2)自私的相对定位(relative)

相对定位一个最大特点是:自己通过定位跑开了还占用着原来的位置,不会让给他周围的诸如文本流之类的对象。相对定位也比较独立,做什么事它自己说了算,要定位的时候,它是以自己本身所在位置偏移的(相对对象本身偏移)。再拿前边作比如来解,那么此时西瓜似乎是有魔法的,如果西瓜通过相对定位在水桶中偏移了你会看到一个现实生活中不存在的现象:水中有一个地方水凹下去了,周围的水不能填补它,西瓜看起来在旁边,如果搅动一下桶中的水,那个凹的位置会发现改变(文本流对相对定位对象还存在影响),但是凹处到西瓜出现的距离始终保持一致。可见文本流与它之间还会互相影响,因为对象并没有真正脱离文本流,就像有两个人在同一层楼水平移动的过程中会有碰头的机会。

(3)总结两种定位的特征

绝对定位就像是把不同对象安排到了一栋高楼的不同楼层(一般指不是第一层,我们这里理解为文本流就放在首层),它们互不影响,但是它们怎么移动与你楼的地基和面积(父级)有关。相对定位指对象还是在首层楼与文本流一起存放,它们之间肯定存在影响。

(4)对特殊情况的补充

在用相对定位和绝对定位的时候,有一种情况是它们的定位值用到了负值则对象可沿相反方向移动,刚才说到的把对象安排在一栋楼的不同层,如果某个对象一开始就是背靠着最外边墙的,此时再用一个负值定位它,它就会神奇般地跑出墙外去了,当然现实中可没有这种惊险而又神奇的事发生

web前端如何实现一个div固定在某个位置

在前端里面,如何将一个div固定在某个位置,属于css内position定位的内容。position定位属性有五种类型,分别如下:

1.static 定位。html元素的默认值,即没有定位,遵循正常的文档流对象。静态定位的元素不会受到 top, bottom, left, right影响。

2.fixed 定位。元素的位置相对于浏览器窗口是固定位置。即使窗口是滚动的它也不会移动。

3.relative 定位。相对定位元素的定位是相对其正常位置。

4.absolute 定位。绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于整个页面。

5.sticky 定位。粘性定位是基于用户的滚动位置来定位。它依赖于用户的滚动,在position:relative与position:fixed定位之间切换。

  • 评论列表:
  •  访客
     发布于 2022-07-09 08:44:14  回复该评论
  • 是高度剩余法。其次,我们才考虑padding ,因为padding也可以看做特殊的盒子高度和宽度,最后我们再用margin来做。因为margin会有边距合并的问题。四、标准流、浮动流和定位的稳定性标准流再里面是最稳定的,就是块级元素上下显示,行内一行显示,都是最稳定的。浮动和定位都“
  •  访客
     发布于 2022-07-09 14:28:05  回复该评论
  • 这个传递的对象是什么样的,怎么去处理这个过程中的数据,这个是中间件插件则有很多,UI插件,数据插件等如果要准备插件首先是数据接口规范,然后是API规范,例如jquery的扩展方法,或者angularjs的指令,这些都是API规范还有core,这个就
  •  访客
     发布于 2022-07-09 17:52:42  回复该评论
  • 如ie6 ,这些奇葩浏览器总是有自己独到的地方,那我们怎办? 兵法云,知己知彼百战百胜,因此,需要我们详细的了解这些浏览器自己独特的特性,或者掌握他们ie6常常出现的bug,以及对于css 的理解,那么我们根据他们的不同解析,写出合理的布局
  •  访客
     发布于 2022-07-09 11:14:43  回复该评论
  • 这是不被允许的。二、合适地方用到合适的标签物尽其用人尽其才。 再合适的地方用到合理的标签,对网页布局和优化都有很多的好处,比如logo ,一般我们都用h1 标签包括。 还有理解行内元素和块级元素的区别。一个页面不要只用div,太多反而太泛滥了。table虽然用的少,但是,再做

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright Your WebSite.Some Rights Reserved.