饥人谷技术博客

有了这些CSS套路,你也可以做一个漂亮的简历

2017-11-03  本文已影响337人  黄同学2019

简历效果预览:简历
原图预览 Resume

预备知识

一、结构分类

  1. 头部导航条制作
  2. 遮罩层制作
  3. 头像、信息展示层
  4. 自我介绍层制作
  5. 技能进度条制作
  6. 作品集制作

说明:以上结构分类仅仅是个人分类方式,按照不同需求可以有不同的分类方式。

二、头部导航条制作

效果图 :


导航条

1.如何让logo和导航条左右分布?
答:Logo左浮动,导航条右浮动。

2.如何让Logo字体左右大小不同,颜色不同?
答:分别对"RS" 和 "card" 使用 <span><a>xxx</a></span>标签包裹,分别给与CSS样式。

3.右边浮动效果?
答:使用无序列表,让列表浮动,使其并排展示,并且清除列表默认样式;

4.鼠标悬浮让导航下变色效果?
答:设置下边框鼠标悬浮效果,添加颜色,粗细程度;

5.让整个导航条相对定位在顶部?
答:在其外层再包裹一层 .topNavbar-inner,相对其定位;注意,需设置其宽度为100%,不然Nav无法浮动在右侧,因为块元素的宽度是由内容所决定,而内容不能占满一整行,所以需定义其宽度。

6.如何让右边导航栏和左侧的logo对其?
答:设置上边距 margin-top

三、遮罩层制作

效果如图:


遮罩层

1.设置背景图平铺,居中?
style="background-position: center center; background-size: cover;"

2.遮罩层如何设置阴暗效果?
style=" background-color:rgba(0,0,0,0.8); "

3.其他问题?
记得设置图片和遮罩层的高度为图片的大小 style=" width = xxx px ;"

四、头像、信息展示层:

效果如图:


信息展示层

1.如何让展示层居中且靠近上半部分?
答:对外层信息层给定一个固定宽和高,设置 margin:0 auto进行居中;设置整体margin-top:-xxx px;给定一个负值即可上浮。

2.难点: “hello”标志的和下方三角形的制作?
答-1:内容包裹在 span内,设置背景色,为了让内容居中显示更美观,使用padding 进行填充。
答-2:三角形的制作:原理:定义一个块,使其宽和高均为0;设定其border的厚度,然后设置三角形以外的部分为透明即可得到。

注意一个小问题:我在写代码的时候遇到这样一个问题:因为三角形的外部结构为 .hello>.triangle,但是我在写CSS给三角形定位的时候没有使用 .hello >.triangle ,而是写成了 .hello .triangle{position:absolute},当然,上层为 .hello{position:relative} 但是三角形却相对 body而定位(之前定义导航栏的时候也使用了position) 想知道是为什么呢?

效果和代码


image
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <style>
      span{
      display:block;
      border:15px solid red;
      width:0;
      height:0;
      border-top-color:red;
      border-right-color:blue;
      border-bottom-color:blue;
     /*  border-right-color:transparent;
      border-bottom-color:transparent; */
    }
  </style>
</head>
<body>
<span></span>
</body>
</html>

3.难点: 对信息左右对称分布该怎么处理?
答:因为左右两边是一一对应的,我们很容易想到使用 <dl><dt><dd>这三个标签。那么是如何做到的呢?首先,让<dt><dd>元素都左浮动,同时父元素添加clearfix清除浮动;然后他们会合并成一行。接下来,设置 <dt>、<dd>的宽度分别各占总宽度的30%和70%(具体美感细节可以自己调节)。然后设置行高line-height:xx px;,避免后续引起其他的bug。为了让其和左边照片对齐,适当调节上下的margin即可。

4.footer部分的svg链接如何制作?
答:此处,需要使用到一个工具:阿里巴巴矢量图库
第一步,注册账号,选择我们需要使用到的图标,加入购物车;
第二步:点击购物车,创建项目,将选择的图标添加进入项目;
第三步:关键一步!!!!!!——看图操作,一步都不可省略!!!即使是添加了新图标也要刷新该代码!!我之前就是因为添加了新图标没有刷新得到新代码,结果图标半天都出不来,折腾了半天才发现是这个问题

看图操作一:操作说明
看图操作二:部分截图
接下来就是按照说明操作即可。

第四步:检查刚才的操作,是否引入了js代码?是否加入了CSS设置相关代码?是否修改了svg的图标代码

5.鼠标浮动在“QQ、微博、Github”上,有背后圆润的暗色背景效果?
答:结构为:<a><svg></svg</a>,设置外层a标签为inline-block,设置边框为border-radius:50%即圆角的设置方式,调整好大小 ,外层添加padding,marginfooter撑起来。设置鼠标悬浮改变背景色,即可出现圆润的暗色背景效果。

6.注意问题:整个信息展示展示层的边框有不是很明显的阴影效果,如何设置?
答:实用工具——推荐网站:制作阴影效果,然后复制右侧没有前缀的那一串代码即可。

五、自我介绍层

1.如何制作简历下载的按钮?
答:通常我们理解为是一个按钮button标签,但是此处我们使用的不是按钮,而是使用<a href="#"></a>来代替,但是它没有外层效果,所以在外层包裹一个 <p>元素,设置其属性为display:inline-block就可以使其长度适应内容变化而变化。同时也和上面一样有阴影效果。

2.自我介绍部分?
答:这一部分比较简单,在外层设置一个div设置其宽度,让内容居中即可。当然,这你也可以使用自己喜欢的字体进行设置。

六、技能进度条制作

效果图:


image

1.进度条制作?
答:定义2个div,里外各一个,外层表示背景色,内层表示进度条,设置边框和背景色即可.。

2.如何布局?
答:定义一个无序列表,使其浮动,然后设置两边宽度分别占一半(或者一半少一点,更好布局)。

3.向左浮动的时候,原本右边设置好的边距扩大了?
答 :有两种方式,你可以对右边的技能进度条的左边距设置固定值;或者是使右边的进度条向右浮动,但是,两种方式都要用到一个特殊的伪类元素 nth-child(参数)://参数even表示偶数,odd表示奇数,也可填写具体数字,表示第几个;

注意 外边框有阴影效果和圆角边框,记得再添加样式的时候不能遗漏。

七、作品集制作

效果图:


作品集

(2)下面的3个作品集,还是一样的套路,总体外部居中,指定宽和高,同时也给图片指定宽和高。但是,一个需要注意的问题:为了后面更好添加js效果,这里我们不采用浮动的方式对图片布局,而是使用position相对定位。

最后:阶段总结

总结我们在这个页面中使用了哪些套路?
1.首先清楚默认样式:

body{
    margin: 0;
}
a{
    color: inherit;
    text-decoration: none;
}
*{
    padding:0;
    margin: 0;
}
ul,ol{
    list-style: none;
}
h1,h2,h3,h4,h5,h6{
    font-weight: normal;
}

2.float 和 clearfix :浮动和清除浮动:子元素要浮动,给它的父类添加浮动;

.clearfix::after {
    content: '';
    display: block;
    clear: both;
}

3.固定定位,例如导航条使用到的固定定位在头部:父类position:relative;子类position:absolute,同时设置具体的位置top,left...
4.背景色设置暗色效果:background-color: rgba(0,0,0,0.8);
5.设置阴影: box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.5);
6.display:blockdisplay:inlinedisplay:inline-block 三者的区别

(1)block元素会独占一行,多个block元素会各自新起一行。默认情况下,block元素宽度自动填满其父元素宽度。
(2)block元素可以设置width,height属性。块级元素即使设置了宽度,仍然是独占一行。
(3)block元素可以设置marginpadding属性。
常见块元素有:DIV, FORM, TABLE, P, PRE, H1~H6, DL, OL, UL 等

(1)inline元素不会独占一行,多个相邻的行内元素会排列在同一行里,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化。
(2)inline元素设置width,height属性无效。
(3)inline元素的marginpadding属性,水平方向的padding-left, padding-right, margin-left, margin-right都产生边距效果;但竖直方向的padding-top, padding-bottom, margin-top, margin-bottom不会产生边距效果。
常见的内联元素有 SPAN, A, STRONG, EM, LABEL, INPUT, SELECT, TEXTAREA, IMG, BR 等

    display: inline-block;
    vertical-align: top;

7.设置边框圆角:border-radius: 2px; ,具体参数可以自己调试
8.伪类元素nth-child(attr)参数值可以为 具体数字,奇数odd,偶数even ,主要为了方便给元素添加CSS效果。

(完)

上一篇 下一篇

猜你喜欢

热点阅读