静态资源库CDN服务

最后更新于:2022-04-01 14:24:54

使用静态资源库可以访问线上资源文件,比如jquery库、bootstrap库。使用百度静态资源库的居多,但是发现百度暂时不支持https协议,bootcdn是一个不错的选择。 ### 百度静态资源公共库 #### 优点: - 稳定,快速 由百度遍布全国各地100+个CDN节点提供加速服务。 让开源库享受与百度首页静态资源同等待遇。 - 全面,开源 收录超过180+开源库,并且这个数字正在不断增加。 百度静态资源公共库服务不仅在Github开源库上接受任何人的提交请求,同时实时同步国外如CDNJS上优秀的开源库。 地址:[http://cdn.code.baidu.com/](http://cdn.code.baidu.com/) ### bootCDN #### 优点 - 资源丰富,收录了 1600+个开源项目 - 支持https协议 地址:[http://www.bootcdn.cn/](http://www.bootcdn.cn/)
';

CSS Media Query

最后更新于:2022-04-01 14:24:51

通过设置media可以根据不同的屏幕尺寸展示不同的css样式。 ### 用法 ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> @media screen and (max-width: 640px) { body{ background-color:#008040; } } @media screen and (min-width: 640px) { body{ background-color:#FFCC66; } } </style> </head> <body> </body> </html> ~~~ 当屏幕尺寸大于640px时显示的背景颜色是:#FFCC66;当屏幕尺寸小于640px时显示的背景颜色是#008040.
';

Bootstrap图片轮播

最后更新于:2022-04-01 14:24:49

Bootstrap提供了carousel插件,实现图片轮播非常方便。 ### 代码 ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script> <style type="text/css"> img{ margin:0 auto; } </style> </head> <body> <div id="carousel-example-generic" class="carousel slide" data-ride="carousel"> <!-- Indicators --> <ol class="carousel-indicators"> <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li> <li data-target="#carousel-example-generic" data-slide-to="1"></li> <li data-target="#carousel-example-generic" data-slide-to="2"></li> </ol> <!-- Wrapper for slides --> <div class="carousel-inner" role="listbox"> <div class="item active"> <img src="images/lunbo1.jpg" height="266" width="800" alt="..."> <div class="carousel-caption"> ... </div> </div> <div class="item"> <img src="images/lunbo2.jpg" height="266" width="800" alt="..."> <div class="carousel-caption"> ... </div> </div> <div class="item"> <img src="images/lunbo3.jpg" height="266" width="800" alt="..."> <div class="carousel-caption"> ... </div> </div> ... </div> <!-- Controls --> <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev"> <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span> <span class="sr-only">Previous</span> </a> <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next"> <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> <span class="sr-only">Next</span> </a> </div> </body> </html> ~~~ ### 效果 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbd65767.jpg "") ### 可选参数 - data-ride=”carousel”:加上可以自动播放,不加点击后才会播放。 - 添加标题 标题写在 `<div class="carousel-caption"></div>`之间 例如: ~~~ <div class="carousel-caption"> <h3>果壳推书正式上线</h3> <p>好书分享、经验交流</p> </div> ~~~ 官网:[http://v3.bootcss.com/javascript/#carousel](http://v3.bootcss.com/javascript/#carousel)
';

Emmet语法(一)

最后更新于:2022-04-01 14:24:47

[Emmet](http://www.emmet.io/)是一个前端开发插件,可以快速生成html代码,提升开发效率. #### 1.Sublime Text3安装emmet > preference->package control ->install package,输入emmet,安装即可. #### 2.快速生成html结构文档 在新建的html中输入!或者html,生成html 5结构文档: > ! 或者html:5 按tab键生成: ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> </body> </html> ~~~ html4结构文档 > html:tx 按tab键生成: ~~~ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Document</title> </head> <body> </body> </html> ~~~ ### 3.生成带id的标签 > 元素名 #id名 如: ~~~ p#name ~~~ 按tab键生成: ~~~ <p id="name"></p> ~~~ > #name 按tab键生成: ~~~ <div id="name"></div> ~~~ ### 4.生成带class的标签 > div.classname 按tab键生成: ~~~ <div class="classname"></div> ~~~ 混合: > div#header+div.body+div#foot.classnam1.classname2.classname3 按tab键生成: ~~~ <div class="classname"></div> <div id="header"></div> <div class="body"></div> <div id="foot" class="classnam1 classname2 classname3"></div> ~~~ ### 5.生成子代:> 用符号”<”生成子代,示例: > div >ul>li 按tab键生成: ~~~ <div> <ul> <li></li> </ul> </div> ~~~ ### 6. 生成兄弟:+ 使用”+”生成兄弟,示例: > div+p+bq 按tab键生成: ~~~ <div></div> <p></p> <blockquote></blockquote> ~~~ ### 7.生成父代:^ 使用”^”生成父代节点,示例: > div>p>h1^h2 按tab键生成: ~~~ <div> <p> <h1></h1> </p> <h2></h2> </div> ~~~ ### 8.重复元素: 任何元素后面加上*n就会被重复n次,比如生成一个包含4个li的ul: > ul>(li.name)*4 按tab键生成: ~~~ <ul> <li class="name"></li> <li class="name"></li> <li class="name"></li> <li class="name"></li> </ul> ~~~ ### 9.生成分组:() 用括号进行分组,这样可以更加明确要生成的结构,特别是层次关系,示例1: > (div>dl>(dt+dd)*3)+footer>p 按tab键生成: ~~~ <h2></h2> <div> <dl> <dt></dt> <dd></dd> <dt></dt> <dd></dd> <dt></dt> <dd></dd> </dl> </div> <footer> <p></p> </footer> ~~~ 示例2: > div>(header>ul>(li>a)*2)+footer>p 按tab键生成: ~~~ <div> <header> <ul> <li><a href=""></a></li> <li><a href=""></a></li> </ul> </header> <footer> <p></p> </footer> </div> ~~~ ### 10. 设置属性:[] 属性写在[]内,属性当中采用等号赋值,多个属性用空格隔开. 示例 > a[href=”http://blog.csdn.net/napoay” title=”姚攀的博客”] 按tab键生成: ~~~ <a href="http://blog.csdn.net/napoay" title="姚攀的博客"></a> ~~~ ### 11.对生成内容编号:$ 可以使用美元符 $对项目编号,示例 > ul>li#item$*5 按tab键生成: ~~~ <ul> <li id="item1"></li> <li id="item2"></li> <li id="item3"></li> <li id="item4"></li> <li id="item5"></li> </ul> ~~~ 上面的例子是从小到大,从大到小可以在$后加@-: > ul>li#item$@-*5 按tab键生成: ~~~ <ul> <li id="item5"></li> <li id="item4"></li> <li id="item3"></li> <li id="item2"></li> <li id="item1"></li> </ul> ~~~ 从指定序号N开始: > ul>li.item$@3*5 按tab键生成: ~~~ <ul> <li class="item3"></li> <li class="item4"></li> <li class="item5"></li> <li class="item6"></li> <li class="item7"></li> </ul> ~~~ 从指定序号N开始倒序,N是最小的编号: > ul>li#item$@-4*5 按tab键生成: ~~~ <ul> <li id="item8"></li> <li id="item7"></li> <li id="item6"></li> <li id="item5"></li> <li id="item4"></li> </ul> ~~~ ### 12.生成文本内容:{} 想要在生成的元素内插入内容,可以使用{},把文本内容放进去即可。示例: > ul#id1>li.classname{生成文本内容}*5 按tab键生成: ~~~ <ul id="id1"> <li class="classname">生成文本内容</li> <li class="classname">生成文本内容</li> <li class="classname">生成文本内容</li> <li class="classname">生成文本内容</li> <li class="classname">生成文本内容</li> </ul> ~~~ 小结:上述内容总结了emmet生成html文档结构、类、id、属性、文本内容、父级节点、兄弟阶段、子节点、序号的方法。正确安装emmet插件,注意中英文切换和空格,熟练掌握以上命令可以快速提高开发效率.
';

CSS选择器

最后更新于:2022-04-01 14:24:45

### 基本规则 每CSS规则由两部分组成:选择器和声明块,声明由一个或多个声明组成,每个声明是一个属性-值对. ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbd0f27b.jpg "") ### 1.元素选择器 元素是最基本的选择器, h1,p,a都可以直接做为选择器,甚至是html本身. ~~~ h1{color:#66CCFF;} h2{color:silver;} p{font-size:20px;color:#cccccc;} ~~~ 一个选择器可以有多个声明,声明之间用分号隔开;一个属性也可以有多个值,中间用空格隔开.给h1加上边框,边框颜色会灰色,边框样式为实线,可以这样写: ~~~ border:1px solid #cccccc; ~~~ 选择器分组:如果想同时把不同元素设置相同对样式,可以使用分组同时使用, 选择器之间用逗号隔开。比如需要把h1 和p都设置为字体颜色为红色: ~~~ h1,p{color:red;} ~~~ ### 2. 通配选择器 通配选择器用一个星号(*)表示,这个选择器可以和任何元素匹配。例如,要把一个文档中所有的元素颜色都设置成银色,可以这样写: ~~~ *{color:silver;} ~~~ ### 3. ID选择器 使用元素选择器会把一个文档中所有都元素都设置为同一样式,以h1{color:red;} 为例,会把所有的h1标签设置为红色,如果只想对一个特定的h1设置样式,可以通过设置id的方式定义规则. ~~~ <p id="p1">test1</p> <p id="p2">test2</p> ~~~ 只对第二个p标签设置样式: ~~~ #p2{color:silver;} ~~~ ### 4.类选择器 通过给元素设置标记,同一类的元素可以有相同多样式. 下面的h1和p元素属于同一类,类名为cal. ~~~ <h1 class="cla">Hello World</h1> <h2>safe information</h2> <p class="cla">Where there is a will,there is a way</p> ~~~ 设置CSS样式: ~~~ .cal{color:color:#FF8000;}/*h1和p具有相同的颜色*/ ~~~ 也可以单独设置: ~~~ p.cal{ color:yellow;}/*对h1没有作用*/ ~~~ - 多类选择器 下面对html代码中有2个p标签,第一个p标签有两个类标记,第二个p标签有一个类标记. ~~~ <p class="urgent warning"> When handling plutoium,care must be taken to ...</p> <p> With plutoium,<span class="warning">The possibility...</span></p> ~~~ 我们将类名为waring的标签字体颜色设为红色,类名为urgent的标签字体颜色设为绿色,那么类名为warning和urgent的标签应该是什么? ~~~ .warning{color:red;} .urgent{color:green;} ~~~ 这种情况只保留写在后面的类的属性,写在前面的会被覆盖掉. 对于多类名的也可以通过下面的方式设置: ~~~ .urgent.warning{background-color:blue;} ~~~
';

jQuery笔记

最后更新于:2022-04-01 14:24:42

### jQuery笔记 ### 简介 jquery是一个优秀的javascript库.jquery能使用户方便的处理html、events、动画,并且能方便的提供ajax交互,核心理念是write less,do more. ### 官网 [http://jquery.com](http://jquery.com) ### 版本 - 1.x 支持ie6+ - 2.x 支持ie9+ ### 功能 - HMTL元素选区 - HTML元素操作 - CSS操作 - HTML元素操纵 - CSS操作 - HTML函数事件 - javascript特效和动画 - htmldom遍历和修改 - AJAX - … ### 引入 1. 从jQuery官网下载后引入 1. 从百度、谷歌、新浪等服务器上加载 百度静态资源库地址[http://cdn.code.baidu.com](http://cdn.code.baidu.com) jquery 2.1.4版本地址地址[http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js](http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js) 3.html head中引入 ~~~ <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js"> </script> ~~~ ### 语法 > $(selector).action() - $代表jquery - selector是要操作的对象 - action对应元素的操作 - $(this).hide() –隐藏当前段落 - $(“p”).hide() –隐藏所有段落 ### demo ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jquey01</title> </head> <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js"> </script> <script type="text/javascript"> $(document).ready(function(){ $("p").click(function(event) { /* Act on the event */ $(this).hide(); }); }); </script> <body> <p>hello1</p> <p>hello2</p> <p>hello3</p> <p>hello4</p> <p>hello5</p> </body> </html> ~~~
';

JavaScript图片切换

最后更新于:2022-04-01 14:24:40

最近学前端感觉入门了,还在最最基础的阶段。今天打开一个网页看到非常常见的一个图片切换效果:在淘宝、JD等购物时,介绍产品的图片会有多张,一般是显示一张,底下有一排小图片,鼠标放到小图片上大图片会切换.参考[vivo X5M 移动4G手机 ](http://item.jd.com/1636144157.html).下面记录一下实现的过程. ### 1. getElementById() 该方法是操作dom非常常用的一个方法,比如有一p标签,id设为pid,通过getElementById(“pid”)就可以对该元素进行操作. ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>demo</title> <script type="text/javascript"> function changeText(){ document.getElementById("pid").innerHTML ="It works!"; } </script> </head> <body> <p id="pid" onmouseover="changeText()">Hello word!</p> </body> </html> ~~~ 上面代码中在body中写了一个p标签,id为pid,当鼠标放到p标签上方的时候触发onmouseover事件,执行changeText()方法,将p标签内的文档改变. ### 2. setAttribute()和getAttribute() getAttribute()方法用于获取某一属性的值,setAttribute()方法用于给某一属性赋值。 ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>demo</title> <script type="text/javascript"> function changeUrl(){ var baiduurl=document.getElementById("aid"); baiduurl.getAttribute("href"); baiduurl.setAttribute("href", "http://www.taobao.com"); baiduurl.innerHTML="淘宝"; } </script> </head> <body> <a href="http://www.baidu.com" id="aid" onmouseover="changeUrl()">百度首页</a> </body> </html> ~~~ 上面代码中,body中有一个a标签,通过getElementById()获取a标签,baiduurl.getAttribute(“href”)的值为默认的href属性,通过baiduurl.setAttribute(“href”, “[http://www.taobao.com](http://www.taobao.com)“)设置以后,该属性值改变.完整代码: ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>on</title> <style type="text/css" media="screen"> *{ padding: 0; } body{ font-family: 微软雅黑; } #imgbox{ width: 320px; height: 490px; padding: 10px; box-shadow: 5px; border: 1px solid #ccc; border-radius: 10px; } #phoneimg{ padding: 10px; border-color: 1px solid #cccccc; } </style> </head> <body> <div id="imgbox"> <img src="images/phone1.jpg" height="400" width="320" alt="phone" id="phoneimg"> <p id="decimg">phone image1</p> </div> <table> <tbody> <tr> <td width="50px"> <img src="images/phone2.jpg" height="100" width="80" title="phone image2" alt="" onmouseover="changeImg(this)" ></td> <td width="50px"> <img src="images/phone3.jpg" height="100" width="80" title="phone image3" alt=""onmouseover="changeImg(this)" ></td> <td width="50px"> <img src="images/phone4.jpg" height="100" width="80" title="phone image4" alt=""onmouseover="changeImg(this)" ></td> <td width="50px"> <img src="images/phone5.jpg" height="100" width="80" title="phone image5" alt=""onmouseover="changeImg(this)" ></td> </tr> </tbody> </table> <script type="text/javascript"> function changeImg(whichpic){ var imgattr=whichpic.getAttribute("src"); var phoneimg=document.getElementById("phoneimg"); phoneimg.setAttribute("src",imgattr); var dectext=whichpic.getAttribute("title"); document.getElementById("decimg").innerHTML=dectext; } </script> </body> </html> ~~~ ![实现效果](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbce0f9e.jpg "") 下一步学习一下怎么实现局部放大.
';

JavaScript瀑布流

最后更新于:2022-04-01 14:24:38

学习了极客学院JavaScript瀑布流实例,实现鼠标下拉图片自动加载效果,和百度图片效果类似[http://image.baidu.com/channel/wallpaper](http://image.baidu.com/channel/wallpaper)。 [TOC] - HTML ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" type="text/css" href="css/style.css"> <script type="text/javascript" src="js/app.js"></script> </head> <body> <div id="container"> <div class="box"> <div class="box_img"> <img src="images/1.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/2.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/3.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/4.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/5.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/6.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/7.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/8.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/9.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/10.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/1.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/2.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/3.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/4.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/5.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/6.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/7.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/8.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/9.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/10.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/1.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/2.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/3.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/4.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/5.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/6.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/7.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/8.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/9.jpg" alt=""></div> </div> <div class="box"> <div class="box_img"> <img src="images/10.jpg" alt=""></div> </div> </div> </body> </html> ~~~ - CSS ~~~ *{ margin: 0px; padding: 0px; } #container{ position: relative; } .box{ padding: 5px; float: left; } .box_img{ padding: 5px; border: 1px solid #cccccc; box-shadow: 0 0 5px #ccc; border-radius: 5px; } .box_img img{ width: 150px; height:auto; } ~~~ - js ~~~ window.onload=function(){ imgLocation("container","box"); var imgData={ "data":[ {"src":"2.jpg"}, {"src":"3.jpg"}, {"src":"4.jpg"}, {"src":"5.jpg"}, {"src":"6.jpg"}, {"src":"7.jpg"}, {"src":"8.jpg"}, ] }; window.onscroll=function(){ if (checkFlag()) { var cparent=document.getElementById("container"); for (var i = 0; i < imgData.data.length; i++) { var ccontent=document.createElement("div"); ccontent.className="box"; cparent.appendChild(ccontent); var boximg=document.createElement("div"); boximg.className="box_img"; ccontent.appendChild(boximg); var img=document.createElement("img"); img.src="images/"+imgData.data[i].src; boximg.appendChild(img); } imgLocation("container","box"); } } } function checkFlag(){ var cparent=document.getElementById("container"); var ccontent=getChildnode(cparent,"box"); var lastContentHeight=ccontent[ccontent.length-1].offsetTop; var scrollTop=document.documentElement.scrollTop||document.body.scrollTop; var pageHeight=document.documentElement.clientHeight||document.body.clientHeight; if (lastContentHeight<scrollTop+pageHeight) { return true; } } function imgLocation(parent,content){ var cparent=document.getElementById(parent); var ccontent=getChildnode(cparent,content); var imgWidth=ccontent[0].offsetWidth; var cols=Math.floor(document.documentElement.clientWidth/imgWidth); cparent.style.cssText="width:"+imgWidth*cols+"px;margin:0 auto"; //把第二排的左起第一张图片放到第一排高度最小的那张下面 var imgHeightArr=[]; for (var i = 0; i < ccontent.length; i++) { if (i<cols) { imgHeightArr[i]=ccontent[i].offsetHeight; }else{ var minHeight=Math.min.apply(null,imgHeightArr); var minHeightIndex=getMinHeightLoc(imgHeightArr,minHeight); console.log("minHeightIndex"+minHeightIndex); ccontent[i].style.position="absolute"; ccontent[i].style.top=minHeight+"px"; ccontent[i].style.left=ccontent[minHeightIndex].offsetLeft+"px"; imgHeightArr[minHeightIndex]=imgHeightArr[minHeightIndex]+ccontent[i].offsetHeight; console.log(imgHeightArr[i]); console.log("高度最低:"+minHeight); } } } function getChildnode(parent,content){ var contentArr=[]; var allcontent=parent.getElementsByTagName("*"); for (var i = 0; i < allcontent.length; i++) { if(allcontent[i].className==content){ contentArr.push(allcontent[i]); } }; return contentArr; } function getMinHeightLoc(imgHeightArr,minHeight){ for(var i in imgHeightArr){ if (imgHeightArr[i]==minHeight) { return i; } } } ~~~ - 实现效果 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbcae583.jpg "")
';

JS时钟实例

最后更新于:2022-04-01 14:24:36

学习了JS日期类和时钟实例. ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript"> function startTime () { var today=new Date(); var y=today.getFullYear(); var mon=today.getMonth()+1; mon=changNum(mon); var d=today.getDay(); d=changNum(d); var h=today.getHours(); var m=today.getMinutes(); m=changNum(m); var s=today.getSeconds(); s=changNum(s); document.getElementById("timeid").innerHTML=y+"年"+mon+"月"+d+"日"+h+":"+m+":"+s; t=setTimeout(function(){ startTime(); },500); } function changNum(i){ //月、日、秒如果小于10数字前加0 if(i<10){ return "0"+i; } return i; } </script> </head> <body onload="startTime()"> <h1 id="timeid"></h1> </body> </html> ~~~
';

网页中使用自定义字体

最后更新于:2022-04-01 14:24:33

### 1.浏览器对字体格式的支持 | 浏览器类型 | 支持格式 | |-----|-----| | IE6 | 仅支持.eot格式 | | IE7 | 仅支持.eot格式 | | IE8 | 仅支持.eot格式 | | Firefox 3.5 | 支持.ttf、.otf格式 | | Firefox 3.6 | 支持.ttf、otf、WOFF格式 | | Chrome | 支持.ttf、.otf、.svg格式 | | Sagari | 支持.ttf、.otf、.svg格式 | | Opera | 支持.ttf、.otf、.svg格式 | ### 2.Windows自带字体 windows自带字体在C:\Windows\Fonts目录下,字体格式为.ttf. ### 3.字体格式转换 - 第一步: [https://onlinefontconverter.com/](https://onlinefontconverter.com/) - 第二步:勾选font-face - 第三步:上传.ttf(或者其他格式字体文件) - 第四步:转换,完成后下载. - 比如上传毛泽东字体的.ttf文件,转换完成后生成以下字体: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbc6bb65.jpg "") ### 4.嵌入自定义字体方法 打开font.css可以大致是这个样子: ~~~ @font-face { font-family: 'mzd'; src: url('mzd.eot'); src: url('mzd.eot?#iefix') format('embedded-opentype'), url('mzd.woff2') format('woff2'); font-weight: normal; font-style: normal; } ~~~ 在HTML中导入该font.css文件,同时把生成的字体文件复制过去,保证路径正确. ### 实例及代码 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbc877c5.jpg "") ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>字体转换</title> <link rel="stylesheet" type="text/css" href="font.css"> <style type="text/css"> body{ font-family: mzd;} p{font-size: 32px;} h2{color:red;} </style> </head> <body> <h1> 沁园春•长沙</h1> <h2>毛泽东 </h2> <p>独立寒秋,湘江北去,橘子洲头.</p> <p>看万山红遍,层林尽染;漫江碧透,百舸争流。</p> <p>鹰击长空,鱼翔浅底,万类霜天竞自由.</p> <p>问苍茫大地,谁主沉浮?</p> </body> </html> ~~~
';

jekyll+markdown+github搭建个人博客

最后更新于:2022-04-01 14:24:31

> 机器环境:Win7 64位 - **安装rubyinstaller.** 1. 到[http://rubyinstaller.org/downloads/](http://rubyinstaller.org/downloads/ "http://rubyinstaller.org/downloads/")下载ruby安装文件,这里下载**rubyinstaller-2.2.3-x64.exe**,按照提示安装,勾选Add Ruby executables to your PATH. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbbb1226.png "") 1. Win7 64位默认安装位置:C:\Ruby22-x64. 1. 验证ruby是否安装成功:cmd中`ruby -v`显示ruby版本号说明ruby安装成功. - **安装rubygems.** 1. 官网下载安装包[https://rubygems.org/pages/download](https://rubygems.org/pages/download "https://rubygems.org/pages/download") 1. 解压rubygems-2.4.8.zip到指定目录,为了方便管理解压后放到C:\Ruby22-x64\目录下. 1. cmd进入rubygems-2.4.8目录下(快捷键:打开C:\Ruby22-x64\rubygems-2.4.8目录,shift+鼠标右键,点击”在此处打开命令行窗口”),运行`ruby setup.rb` .cmd 中 `gem -v` 显示版本号则说明正常. - **安装DevKit-mingw64** 1. 下载相应版本[http://rubyinstaller.org/downloads/](http://rubyinstaller.org/downloads/ "http://rubyinstaller.org/downloads/"),在C:\Ruby22-x64\目录下新建DevKit文件夹,运行**DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe**后会提示解压目录,选择C:\Ruby22-x64\DevKit. 1. 在C:\Ruby22-x64\DevKit中打开cmd,运行`ruby dk.rb init`,会提示配置config.yml. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbbc6e93.png "") 1. 打开C:\Ruby22-x64\DevKit目录下的config.yml,将ruby根目录加入到配置文件中,这里是C:/Ruby22-x64.如果有了就不需要再加.注意格式. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbbdb0dd.png "") 1. 执行ruby dk.rb install. - **替换rubyGem库地址(相当重要,因为国内访问外网有线路问题,不仅更新速度慢,而且还会导致更新失败)** 1. gem sources –remove [https://rubygems.org/](https://rubygems.org/) 1. gem sources -a [https://ruby.taobao.org/](https://ruby.taobao.org/) (注意:一定是https,淘宝已暂停http的ruby服务) 1. gem sources -l验证一下. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbc09ee6.png "") - **安装rails** 1. cmd运行gem install rails. 1. cmd运行rails -v显示rails版本号说明安装成功. - **安装jekyll** 1. cmd运行gem install jekyll 1. cmd运行jekyll -v验证,显示版本号说明安装成功. 环境配置完整之后,下面进入正题,如何新建博客: - 运行命令:jekyll new 文件夹名,比如jekyll new blog,会在当前目录生成blog文件夹. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbc27508.png "") - 在生成的blog文件夹根目录下运行命令:jekyll serve –watch - 浏览器中打开localhost:4000,命令运行过程中没有错误提示,浏览器中显示默认页面说明安装成功. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbc42a6d.png "") - 使用markdown发布博客 1. markdown是什么? 参考淘宝UED关于markdown的介绍[http://ued.taobao.org/blog/2012/07/getting-started-with-markdown/](http://ued.taobao.org/blog/2012/07/getting-started-with-markdown/ "http://ued.taobao.org/blog/2012/07/getting-started-with-markdown/"). 锤子手机发布会上罗永浩介绍了锤子科技出品的app**锤子便签**支持markdown功能,下载地址:[http://bbs.smartisan.com/forum-92-1.html](http://bbs.smartisan.com/forum-92-1.html "锤子便签app"),非常好用,建议下载体验一番. 1. 将markdown、html格式的文件以”YY-MM-DD-finename.filetype”命名放到_post文件夹下:如2015-09-10-firstpost.markdown. - 发布到github 1. 首先注册一个[github](https://github.com/)账号. 1. 新建repository,以username.github.io的形式命名. 1. git提交本地代码到github. 1. git提交命令 - git init - git add . - git commit -m “update” - git remote add origin [https://github.com/cseryp/cseryp.github.io.git](https://github.com/cseryp/cseryp.github.io.git) - git push -u origin master - 参考文章 1. [每个人都应该有一个Jekyll博客](http://www.cellier.me/2015/01/04/jekyll%E6%90%AD%E5%BB%BA%E5%8D%9A%E5%AE%A2%E6%95%99%E7%A8%8B/) 1. [git教程](http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000) - `jekyll 2.5.3 | Error: Permission denied - bind(2) for 127.0.0.1:4000` 出现这个错误说明端口被占有,打开_config.yml,加入一行:port:5001(没有被占用的端口均可)即可解决.
';

表格隔行换色和细线边框实例

最后更新于:2022-04-01 14:24:29

- 隔行换色 当表格行数较多的时候,每一行都是同一种颜色不方便阅读。通常的解决方法是采用隔行变色,使得奇数行和偶数行的颜色背景不一样,方便阅读。这种效果非常常见,实现起来也非常简单,给奇数行和偶数行分别设置不同的选择器,css设置不同的背景颜色即可. ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adadc3f0b.jpg "") - 细线边框 表格默认边框比较粗,可以给表格设置一个背景颜色,cellspacing设为1像素,td颜色设为白色覆盖掉背景颜色,cellspacing空出1像素实现细线边框样式. ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-06_5704adbb93386.jpg "") - 代码 ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>HTML表格隔行换色实例</title> <style type="text/css"> body{ width: 960px; margin:0 auto; text-align: center; font-family: 微软雅黑; } .even{ background-color: #8DEEEE; } .tb_td{ background-color:#ffffff; } </style> </head> <body> <H1>HTML表格隔行换色实例</H1> <table width="90%" cellspacing="1px" cellpadding="5px"> <tr class="tb_head" > <th>学号</th> <th>姓名</th> <th>班级</th> <th>性别</th> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="old"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> <tr class="even"> <td>1108140119</td> <td>王子</td> <td>计算机111</td> <td>男</td> </tr> </table> <H1>细线表格样式</H1> <table bgcolor="#cccccc" width="90%" cellpadding="10" cellspacing="1px" id="table2" > <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr><tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> <tr> <td class="tb_td">1108140119</td> <td class="tb_td">王子</td> <td class="tb_td">计算机111</td> <td class="tb_td">男</td> </tr> </table> </body> </html> ~~~
';

前言

最后更新于:2022-04-01 14:24:27

> 原文出处:[前端学习笔记](http://blog.csdn.net/column/details/fontend.html) > 作者:[napoay](http://blog.csdn.net/napoay) **本系列文章经作者授权在看云整理发布,未经作者允许,请勿转载!** # 前端学习笔记 > 前端学习笔记
';