CSS的重要性

自己很喜欢查看设计出彩的网页,在CSS Zen Garden选择了一个颜色搭配亮眼、结构错落的网页,照着原页面自己写了一个出来。之前做页面的时候总是会把原页面和自己做的放到PS里一个像素一个像素对比查看,因为刚写完的页面整体看不出大的问题,但是对比之后会发现字体啦、浏览器兼容啦还有一些标签自带的margin、padding忘记reset啦之类的问题会导致像素偏差,尤其是当纵向出现偏差,越往下偏差就会越大了。再加上我有极度的强迫症,所以每次几乎都会保证自己写的页面和模板重合。

这次写这个页面的时候一开始就把我难住了。。。因为原页面的单位是用的em啊!天!我当时就无语了。因为...因为宝宝不会算啊!!百度了半天怎么算啊巴拉巴拉之类的,可是一套进去算发现根本不对。。。后来就索性直接用chrome的开发工具模式里面computed盒模型已经算好的值。。所以这个页面我坚决不能做重合检查工作了。。。不然我会自己把自己逼疯的。。。

整个页面看起来真的是很好看,而且实现起来也不难,仅仅是大面积使用background-color的颜色,穿插复古大图。以前看页面就是看高兴,觉得做起来很难,真正下手了,发现其实都是最基本的东西叠加在一起,比如错落感是怎么实现的?主要主要主要就是position各种定位,利用margin搭配padding呈现一种错落有致的感觉。

这里用到一些之前没有尝试过的标签属性,把这些列在这里:

(1)box-sizing:border-box;这个是CSS3的新增属性,border-box表示怪异盒模型,还有一个可选值是content-box是正常情况下的盒模型。这个页面很多使用的是border-box,比如下图,直接用border-box时,左边部分可直接用百分比表示宽度:width:40%;

border-box的可视宽=css设置的width,width=content宽+padding。(书上和百度出来的都是width=content宽+padding+border)可是自己验证出来是width=content宽+padding。为什么???whywhywhy啊?

(2)这个页面有很多标题旋转90°显示的,比如上面图最左边的标题,实现起来其实就是transform:rotate(-90deg);再加绝对定位position:absolute;移动至合适的位置。

(3)还用到一个属性,也是CSS3新增的:background-size:contain/cover/101%/50%;设置图片大小。还是用上图举例,深蓝色部分有个圆的背景图

其实是颜色背景+图片背景:

background: #0d2c40 url(‘img/icon-half.svg‘) right center no-repeat;

这个图片本来是很大的,这里因为深蓝色部分设置了width,所以这里可以用:

background-size: cover;

注意:cover和contain还是有区别的,自己写代码试一下就明白啦~

(4)这部分看起来是两个部分,实际上在写HTML这里的文字仅用了两种标签,一个h3,三个p标签,只不过对最后一个p标签单独设置了背景、position、文字颜色等。所以从这个页面中我发现一个真理:不要想当然!还有一个很重要:要动手做!!!!

(5)这个图里错落的感觉完全是用到margin、position,有时候要搭配padding正值和margin负值实现。

(6)这两个图中有个很重要的点之前确实不这么用,第一个图中很大的1、2、3、4和第二个图中的图片摆放实际是用到了::before!!

.requirements::before{    content: ‘‘;    position: absolute;    left: -486px;    top: 0;    z-index: 2;    -webkit-background-size: cover;    background-size: cover;    width: 454px;    height: 608px;    padding: 16px;    background:url("img/mid-century-2.jpg")no-repeat left center;}
.navigation nav li:nth-child(1)::before{    content: ‘1‘;    font-size: 700%;  }

但是,这里要说一个大大的但是。。。那就是IE兼容!!!这些在IE6下运行的时候。。。ohmygod。。。完全没有美感了。。。因为IE6不支持CSS3的这一堆属性啊啊啊!好受伤。。。这种美美的界面我就只欣赏不做兼容了好了。。。=_=!!!

最后总结就是我真是服了我这没没见过世面的样子。。。各人审美不同,大神们可以无视我这种盲目的欣赏。一个页面就搞的自己很兴奋我也是醉了,之前问过一个师兄,他说页面好看不实用还是白搭,所以让我多做js啦数据交互啦之类的。不过管他呢,我就好这口啊。。。总会学到什么的,那就够啦~

多做多做多做!!!

				
时间: 2024-08-26 09:44:54

CSS的重要性的相关文章

12 css中重要性标签

<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <style type="text/css"> p{color:red!important;} p.first{color:green;} </style> </head> <body> <h1&

css权重计算方法浅谈

在这之前只知道css权重的皮毛,比如说:行内权重比头部权重高,头部比外部样式权重高----工作中才知道真正理解css权重重要性.理解权重了才能写出来最优css选择器来.对后面学习less,scss有很大帮助. 从css代码存放的位置来看,权重计算当然是--->内嵌样式 > 内部样式表 > 外联样式表!然而工作中我们的css代码都是写在外联样式表中的咯. 参考w3c样式选择器权重优先级是这个样子的 important > 内嵌样式 > ID > 类 > 标签 | 伪

HTML中使用CSS的几种方式介绍

HTML中使用CSS的几种方式介绍:CSS的重要性咱们就不多说了,加入没有CSS的话,网页的显示方式可能枯燥无味,甚至毫无美观度可言,下面就简单介绍一下在html中使用css的几种方式,希望对初学者带来一定的帮助.一.引入外部样式表: <link type="text/css" href="css/style.css" /> 以上代码可以引入在同级目录下,css文件夹中名为style的样式表文件,这个路径可以是相对路径也可以是绝对路径. 关于路径可以参阅

css样式的引入方式

首选来介绍一下什么是CSS?(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言,其实就是一种层叠样式表. CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化.CSS能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力. 就像造房子一样,如果html是基地的话,那么CSS就是装修,只有装修的房子

web前端学习心得

所谓行万里路,必先始于足下.刚开始学习WEB前端基础的时候,老师说,其实你们学的这个后面真正去工作的时候可能也不是很会用到,所以就有很多人会问,既然我们都用不到,那干嘛还学呀?其实,对于一个程序员来说,你不仅要有很好的后端专业能力,你还应当具备一定的前端素养,知道一些起码的前端知识. 来到传智的第一个月,我们是以基础为主吧,因为大家到这里的基础都不一样,有一些本身就具备很高水准的人,也有很多像自己一样从小白开始的人,所以,对我们而言,传智开设的这种双元模式对我们是有很大用处的.我们从最基础的开始

Python 学习第十八天 js 正则及其它前端知识

一,js 正则表达式 test 判断制度串是否符合规定的正则 (1)定义正则表达式匹配规则         js 中定义正则表达式为rep=/\d+/,两个//之间为正则模式 (2)rep.test("assdsda89sdasdas") ,返回true,一般test 方法为只要字符串中的包含正则模式即返回true (3)rep=/^\d+$/完全匹配正则模式    exec 获取匹配的数据 1, (1)rep=/\d+/; (2)str="wangshen_67_houya

Qt之QLabel

简述 QLabel提供了一个文本或图像的显示,没有提供用户交互功能. 一个QLabel能够包括以下随意内容类型: 内容 设置 纯文本 使用setText()设置一个QString 富文本 使用setText()设置一个富文本的QString 图像 使用setPixmap()设置一个图像 动画 使用setMovie()设置一个动画 数字 使用setNum()设置int或double,并转换为纯文本. Nothing 空的纯文本,默认的.使用clear()设置 简述 纯文本 显示 对齐方式 自己主动

如何创建栅格系统?

首先,设计你的删格. 你是要使用等宽的还是不等宽的网格列?要有多少列数?间隔和列的大小是多少? 当你回答了上面的问题你只能做出正确的网格计算.为了解决大家的困扰,我写了一篇设计删格.如果你正想学习设计一个删格系统可以读一下. 其次,你需要明确你的删格系统在不同视口的表现 当屏幕视口发生变化时你要实时重新计算列和间隔么?当间隔保持不变时,你要改变列的大小么?在明确的分界点上你要改变删格列的数量么? 你需要好好回答这些问题.在如何计算列宽和间隔宽上,这些会给你一些线索.在提到的那篇设计删格中我也写了

CSS中继承,特殊性,层叠与重要性

继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代.比如下面代码: <html><head> <style> p{border:1px solid red} </style> </head> <body> <p>123<span>123</span>123</p> </body> </h