现在很多网页都做得特别绚,因此很多时候大家都想着实现一些看上去吊炸天的效果,而这些前端的效果不管怎么华丽最原始的基础还是那一行行的代码,html+css+js就是前端的三剑客。
而不管是哪个实例,我们都要做到的一个效果就是让一个html元素(标签)的区域铺满全屏?就算是传统的pc网页,我们也要接受不同的电脑屏幕高度,在传统的网页设计中我们可能采用一个固定的宽度,比如960px、1000px、1200px,当然现在这种固定宽度的设计依然很流行,只是把这个固定的宽度增加了(电脑屏幕的提升,呵呵)。但如果要实现上述我们提到的看上去酷炫的风格,我们显然不能使用固定的宽度和高度。
显然,我们需要使用自适应的宽高;大家都知道宽度自适应似乎比高度自适应来的更简单。可能大家都有这样的经历,认为宽度100%比高度100%的适用范围更加广;而实际上也是如此。
大家可以看到宽度是1350px,其实就如果出去margin就是我当前可用屏幕区域的100%宽度,而高度显然不是这样;这样我们可以通俗地理解为宽度的100%比高度的100%应用范围更广。
因此要实现我们的需求,宽度方面在没有特殊情况下直接使用100%即可解决;而高度我们自然也想到过用100%,但不得不考虑它的适用范围了。其实不管是宽度也好,高度也罢,它们的100%(当然其他数值也一样)是以它们的父节点作为参考的,而大的“祖宗”的默认宽度就是100%,而高度为0。
因此得到全屏展示当然我们也想到了两种方式,一种是css,另外一种则是在静态css无法实现的时候采用js对html进行dom操作动态改变元素的css属性值。
1、css方式
在使用css方式的时候必须有前提的,就拿高度的100%来说,咱们必须定义它的父级元素的高度,而且高度为铺满全屏的高度。同时注意不要有其他的css冲突,比如我们使用position:absolute(绝对定位)的时候我们使用高度100%就会失效了。
2、javascript方式
如果因为我们的这个模块的需求,导致我们不能满足使用css完成这一需求的时候,我们就要动用js,来做了。当然我们不管 是用原生的js还是jquery等框架。我们必须选对相应的对象及其方法。比如很多人说应该选择screen对象,其实我觉得不是这样的,因为不管是我们的pc也好还是我们的移动端也好,浏览器本身往往已经占用了一定的位置,因此我建议使用window对象来获取尺寸的数值,然后通过dom对html元素的css属性值进行改变。
超实用的网页前端开发工具CSS库和框架大全让界面扁平化不如让信息层级扁平在无锡对于网站的长尾关键词SEO需要做哪些功课浅析B2B2C的分销商城系统网站的构成重新设计网站的5个理由企业网站建设时需要注意什么香港免备案主机多少钱一年