前篇博客分享了一下自己初入github的过程,傻瓜式一步步搭建好主页后,终于该做正事儿了——写简历。在脑袋中构思了很多版本,最后终于决定,先写一个最传统的版本,于是我在箱子中翻出我word版本的简历,对照写一个html版本的。

word版本看起来是这个样子的

html版看起来是这样子的

本来以为很简单的事情,没想到折腾好久,反反复复修改,终于弄出一个满意的版本,有兴趣的同学可以到我的github上看看

技术点儿分析

源码

View Code

看起来平淡无奇,实际确实没什么高深的,都是最简单的html与css。。。不过最开始我图快全都用简单的table布局实现,后来在不断修改中,也用了一些心思,学到了一些新知识。为了用一些html5和CSS3的东西,只好舍弃了浏览器兼容性,目前我只在最新版本Chrome和Firefox上测试过,而且由于家里没有Windows环境,Mac上滚动条表现形式和Windows上不太一样,所以。。。。

页面结构

上面提到最开始我除了主框架全部使用table布局,后来改为html5版本,舍弃了大部分table(并不是不用table了,table在数据展示方面还是很有优势的),页面布局实际上是这样的了

 1 <!DOCTYPE html>
 2 <html>
 3 <head></head>
 4 <body>
 5     <header></header>
 6     <article>
 7         <section></section>
 8         <section></section>
 9         <section></section>
10         <section></section>
11         <aside></aside>
12     </article>
13 </body>
14 </html>

reset

细心的朋友可以注意到页面引用了一个reset.css,这是根据雅虎的reset.css简单改动的一个版本,自己以前盲目的写了很多,不但凌乱不堪,而且大部分无用,会导致浏览器repaint,降低页面渲染效率

View Code

关于使用section、aside等标签不是装逼的辩解

其实最开始我也很看不惯html5的section、nav、aside等标签,明明和div一样,觉得使用这个纯属装逼,后来接触到一些关于html结构化和语义化的知识后才认识到自己的浅薄,使用了这些标签后能够使计算机更容易理解网页内容,这些标签都是有语义的,比如nav标签里放的是页面导航,footer放的是页面的copyright等,搜索引擎等机器可以更针对性的查找、理解其需要的内容,关于这部分知识有兴趣可以看看web语义化

一直被忽略的::before/::after伪元素

每条前面的对勾以前我会直接逐个写到html中,看了一些网站源码才发现::berore/::after的妙处

li::before{content:url(./images/icons/yes.png);    padding-right:6px;vertical-align: middle;}

简简单单这样就搞定了,content可以制定内容,文字、图片都可以

关于::与:也就是伪元素与伪类区别

简单讲伪元素是为了标示某些元素如first-line等,而伪类是为了区别一个元素的不同类别如:hover,:visited,越说越不明白,看看这个吧

使用disply:box, box-flex 属性布局

看到这种两栏儿布局,大家第一反应是什么,我反正上来想到的是table,然后是float,然后是display:inline-block,这几种布局的局限性很明显,不再赘述,看看CSS3中的解决方案

<section style="display:box"><section style="box-flex:2;">lefft</section><section style="box-flex:3;">right</section>
</section>

display:box属性赋予了我们划分容器的能力,父容器有了display:box(真正使用需要添加浏览器前缀)属性后,其子元素div或section就不再向标准block元素那样独占一行了,几个div可以共处一行,每个div占多少呢?我们可以使用width属性为期赋予绝对宽度,也可以使用box-flex(使用需要浏览器前缀)属性按比例划分,上面例子中left section占父容器宽度的2/(2+3)也就是2/5,右边是3/5。关于相关属性box-ordinal-group, box-orient, box-pack, box-align有兴趣同学可以去网上查查资料

标题怎么凸出来

这个简单的效果让我折腾了一个小时,悲剧的是text-shadow我很早就使用过,用法可以看看CSS3的文字阴影—text-shadow,我不明白的是怎么弄就能让文字凸出来或者凹下去,每次就是瞎试,今天小研究了一下貌似明白了什么。

首先是文字颜色与背景颜色的统一,两个颜色类似才能方便做出这种效果,然后是阴影的颜色用反色,白色文字就用黑色阴影,至于凹凸就要看位移的正负了。我的这个的css是这样的

color:#e8e8e8; /*页面背景也是这个颜色*/
text-shadow: 2px 2px 2px #333, 0px 0px 5px #666;/*移位两次,正数就会凸出来,阴影颜色接近反色*/
font-size: 30px;
font-weight:bold;
text-align:right;
margin-top:15px;

回到顶部图标

由于使用截屏工具,那个图标不明显,其实页面滚动条不再顶部的时候,页面上有个现在网站很常见的回到顶部图标的

难住我的倒不是这个图标的显示控制,这个很简单,把元素设position设为fixed,然后根据页面滚动条位置决定是否出现,Mac下滚动条是可以为负数的,这块儿得处理一下。

1 <aside id="wrap" style="position:fixed; bottom:100px; right:100px;display:none; opacity:0.5;">
2       <section style="background-image:url(images/icons/top.png); width:32px;height:32px;"></section>
3       <section class="reflect"></section>
4       <section class="shadow"></section>
5     </aside>
 1 $(function(){
 2       $('#wrap').on('click', function(event) {
 3         var obj=document.body.scrollTop>0? document.body:document.documentElement;
 4         $(obj).animate({"scrollTop":0}, 1000);
 5         $(this).animate({"opacity":0.5}, 1000);
 6       }).on('mouseover', function(event) {
 7         $(this).css('opacity',1);
 8       }).on('mouseout',function(event) {
 9         $(this).css('opacity',0.5);
10       });
11     });
12     $(document).scroll(function(event) {
13       var goTop=$('#wrap');
14       var scrollTop=document.body.scrollTop || document.documentElement.scrollTop || 0;
15       if(scrollTop>0){
16         if(goTop.css('display')=='none'){
17           $('#wrap').fadeIn(500);
18         }
19       }else{
20         if(goTop.css('display')!='none'){
21           $('#wrap').fadeOut(500);
22         }
23       }
24     });

难住我的是倒影部分,关于这个倒影纯属那个啥了,本来处理很简单,其实就是我源代码中保留的部分,页面放一个aside加上style完事儿

 1 #goTop{
 2       position:fixed;
 3       right:100px;
 4       bottom:100px;
 5       background-image:url(images/icons/top.png);
 6       width:32px;
 7       height:32px;
 8       -webkit-box-reflect: below 0px -webkit-gradient(linear, center top, center bottom, from(transparent),color-stop(0.2, transparent), to(white));
 9       opacity: 0.5;
10     }

效果和上面截图类似,悲剧的是只有Chrome支持,最起码的节操要求我至少把Firefox搞定,反复尝试终于找到了解决办法,具体说来是这样的

1  <aside id="wrap" style="position:fixed; bottom:100px; right:100px;display:none; opacity:0.5;">
2       <section style="background-image:url(images/icons/top.png); width:32px;height:32px;"></section>
3       <section class="reflect"></section>
4       <section class="shadow"></section>
5     </aside>

id为wrap的aside就是整个回到顶部部分,第一个section是上面那个没有倒影的图片,class为reflect的section是倒影图片

 1  .reflect{
 2       background-image:url(images/icons/top.png);
 3       width:32px;
 4       height:32px;
 5       -webkit-transform: scaleY(-1);
 6       -moz-transform: scaleY(-1);
 7       -ms-transform: scaleY(-1);
 8       transform: scaleY(-1);
 9       filter:alpha(opacity='80');
10       opacity: 0.8;
11     }

其实就是插入同样图片,然后使 transform: scaleY(-1); 倒置图片,加上一定的透明,可是这还没完,这样的效果是这样的

 对比一下预期效果

倒是有倒影了,但是倒影没有消失最后,好像有个向下的按钮似的。。。所以加入了class为shadow的section,就是为了让倒影逐渐消失

 1 .shadow{
 2       position: relative;
 3       top:-32px;
 4       left:0px;
 5       height:32px;
 6       width:32px;
 7       background-image: -moz-linear-gradient(center bottom, rgb(227,227,227) 30%, rgba(255,255,255,0) 100%);
 8       background-image: -webkit-gradient(linear, center bottom, center top, color-stop(0.3, rgb(227,227,227)), color-stop(0.7, rgba(255,255,255,0)));
 9       filter: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColor=#e8e8e8, EndColorStr=#ffffff);
10     }

把section上移32px使其处于reflect正上方,然后对这层做一个透明渐变,使reflect处于相应位置的图像部分也透明渐变,终于达到预期效果。关于-moz-linear-gradient/-webkit-gradient的使用可以看看理解CSS3线性渐变

最后

本来就是本着玩玩儿的目的写这个在线简历的,没想到收获比我预期的大得多,熟悉了很多自己一知半解的东西,而且制作过程中产生了很多新想法,建议有想法的同学们也试试,即使不想换工作,制作过程中会有想不到的收获。

接下来会陆续做一些类似的,不同样式的简历,可能要反复修改,应该进度会比较慢,主要是锻炼一下JavaScript, html5, CSS3技巧,可以在我的github上看看我的进度,尽量尽快push 更新。

PS.虽然现在不急着换工作,但朋友看了我的简历内容后都觉得写的弱爆了,都是空谈,看不出具体会什么,希望热心的朋友也能给出这方面的修改意见。

from: http://www.cnblogs.com/dolphinX/p/3439376.html

在github上写个人简历——最简单却又不容易的内容罗列相关推荐

  1. 在github上写个人简历——先弄个主页

    起因 不知道园友们在使用智联招聘等网站填写简历的时候对要求输入的内容有没有一种无力感,不吐槽了反正就一句话,按照它提供的格式我没法儿写简历,而且面试的时候总会被问道有没有自己作品,哥们儿天天上班,下班 ...

  2. 在github上写自己的博客

    我的github网址:grimxiaojun 欢迎来到王小俊的个人博客 这是我在github上的第一篇博客,这一篇博客我将讲述我怎么想来到github上写自己的博客的和如何在github上搭建个人博客 ...

  3. 并不是所有的 Github 项目写在简历上都加分

    本文转载自微信公众号:果汁简历 为什么 Github 可以加分 很多招聘描述上面都会备注 github加分项,那么为什么它是加分项呢? 停,如果看到这里你还不知道 Github 是什么,可以看一下 P ...

  4. 不止一个人犯错,这种 Github 不要写在简历上!

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 为什 ...

  5. 这种 Github 不要写在简历上!你们有没有写过?

    为什么 Github 可以加分 很多招聘描述上面都会备注 github加分项,那么为什么它是加分项呢? 停,如果看到这里你还不知道 Github 是什么,可以看一下 Phodal的手记 https:/ ...

  6. 5分钟学会Markdown语法,在GitHub上写出漂亮文本,提升别人阅读体验

    今天研究下在GitHub中如何漂亮的书写readme部分 markdown是一种纯文本格式的标记语言.通过简单的标记语法,它可以使普通文本内容具有一定的格式. 1.因为是纯文本,所以只要支持markd ...

  7. 【Git】2022最新Github上传代码,操作简单

    目录

  8. github可以刷星吗_GitHub 没有 star,该写进简历里吗?

    又到毕业季了,打开 Word 准备写简历,却开始犯了难: 总听前辈和大佬们说,简历里放上自己的 GitHub 链接是个加分项:然而,自己的GitHub 上面只有零星的一点点绿,充其量也就是一些个人项目 ...

  9. 在Github上搭建Jekyll博客和创建主题

    在Github上搭建Jekyll博客和创建主题 之前本来想展开写的,后来发现Jekyll官网的教程已经非常完善了就没有多写,所以只有这篇. 但是过了这么久,发现很多人还是不清楚怎么搭建,所以这里打算详 ...

  10. AndroidStudio引入Github上的第三方库(从下载到部署完整过程演示)

    引言 对于程序开发人员来说,了解和熟练使用Github是一项必备且重要的技能.因为Github作为一个分布式的版本控制系统和代码托管平台,开源了海量的源码资源,能够极大的提高学习效率,减少开发周期.当 ...

最新文章

  1. python 推迟运行_一文看懂Python的time模块sleep()方法和strftime()方法
  2. 使用matlab模拟、检验和估计泊松过程
  3. Codejock Xtreme Toolkit Pro v12.0.0 Full Release
  4. 我们常常意识不到问题的存在,直到有人解决了这些问题
  5. C语言enum(枚举)、指针、函数指针
  6. james-2.3.2中的配置
  7. iOS 完全复制UIView
  8. 8025枚BTC在未知钱包间转移 价值约3.09亿美元
  9. 图片在xml文件中直接加载.9文件
  10. xshell简单使用
  11. Android studio 制作一个app实现简单功能
  12. 贪心科技机器学习训练营(十一)
  13. 有道云笔记中轻松驾驭职场框架图
  14. Java8新特性 Stream流式思想(三)
  15. 苹果手机有没有计算机记录,苹果手机中的safari浏览记录怎么恢复?苹果恢复大师教你...
  16. c语言rst关系,为什么服务器突然回复RST——小心网络中的安全设备
  17. 【菜鸟进阶之路】P6367 [COCI2006-2007#6] PRASE - 洛谷
  18. 3万字BI系统整体建设解决方案
  19. lncRNASNP:SNP位点对lncNA结构和lncRNA-miRNA影响的数据库
  20. stm32f4xx-外部中断

热门文章

  1. 4.2 Branching Strategies
  2. 360无线wifi路由器连接到服务器,luyou.360.cn如何登录360路由器
  3. java电子贺卡_用java写一个新春贺卡,可转exe的
  4. ai关键词整理(分享)
  5. 正则表达式之多种格式的电话号码匹配
  6. MySQL事务之幻读问题
  7. 照相机的成像原理,镜头和单反相机的认识
  8. 十五、JDBC(高琪java300集+java从入门到精通笔记)
  9. 浅谈老妈的QQ号被盗之后
  10. C盘清理瘦身就这三招