Web前端布局实战:三国杀页面布局(上)

互联网进入web 2.0时代,由单一的文字和图片组成的静态网页已经不能满足用户的需求,用户需要更好的体验。在web 2.0时代,网页有静态网页和动态网页。所谓动态网页,就是用户不仅仅可以浏览网页,还可以与服务器进行交互。

网页最主要由3部分组成:结构、表现和行为。网页现在新的标准是W3C,目前模式是HTML、CSS和JavaScript。

这里首先介绍的是布局的实战,html5+css3技术来实现前端的页面,持续关注,后续会不定时进行前端技术的分享。

一、三国杀界面的介绍和布局思路的整理

本次布局实战的是三国杀界面,最终完成的效果如下所示。

从界面上看,其实有8位英雄,如果单从布局的结果上来看,可以把每个英雄做为图片排列起来,再把血条排列起来,再把数字排列起来,但这样做其实不是一种面向对象的开发思维,布局的最终目的是后期可以用js或框架对页面中的元素进行操作,如果在打三国杀牌的时候,出一张“杀”,然后指明目标英雄后,目标英雄如果没有一张“闪”,那么就会掉血,也就是英雄对应的桃心血量会减去一个,使用面向对象的思维,就会调用公式:英雄.血量-1,如果把血量的排列放在一层,就不容易控制到底是哪个英雄的血量。所以最好的方法就是把每个英雄的相关布局设置好,然后横向排列,这样使用面向对象的开发思维,每个英雄就可以看作是一个对象了,后续对英雄的编码行为也就很容易控制玩家英雄的出牌、掉血和阵亡了。

二、单个玩家英雄的布局

首先看单个玩家英雄的布局。如下图所示。

首先定义一个外层的div,可以设置背景是英雄人物张飞,张飞的图片如下。

把div起一个id的名字,在css样式中定义div的width宽度是张飞图片的宽度,height为张飞图片的高度,背景图片为张飞的图片,并且设置不重复。具体代码如下。

<html><head><title>三国杀单个武将界面</title><style>#outer{width:233px;height:250px;background:url(jiang/jzhangfei_1200.jpg) no-repeat;}</style></head><body><div id="outer"></div></body>
</html>

代码最终效果在界面上出现张飞的人物,如下图所示。

根据最终效果图参考,在张飞的div里再嵌套一个div,这个div的图像是三国杀玩家外框的设置,三国杀玩家外框图如下所示。

这个图片有透明效果处理,给这个图片的div设置width宽度,设置height高度和背景图片,不重复,就能用这个图片盖住背景为张飞图片,也就是三国杀玩家外框罩住了张飞的图片,代码如下。

<html><head><title>三国杀界面</title><style>#outer{width:233px;height:250px;background:url(jiang/jzhangfei_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;}</style></head><body><div id="outer"><div id="inner"></div></div></body>
</html>

代码中有一个id为”outer”的div包着一个id为”inner”的div,id为”outer”的div设置背景为张飞,id为”inner”的div设置背景为三国杀玩家外框。background中的参数no-repeat表示不重复。两个div都要设置width和height,即宽和高,宽和高的值可以根据图片的宽和高的值来确定。代码最终显示结果如下图所示。

从图片的结果上看,张飞的人物上面有一个三国杀人物外框。

下面根据最终效果图添加右侧上方的人物身份图,四个血量值,及右侧下面显示的牌的数目4,这三个元素都可以分别使用div来包起来,这样三个元素就能够控制一行,div元素就实现了对一行的统治。

设置一个div元素,里面只有一个身份的图像,这个图像可以做背景,也可以直接作为图像来处理。如果作为图像处理,包着这个图像的div就会自动被拉伸开来。然后在css中需要调整这个图片的距离,它是排列在右侧的,如果用margin-left这个来定位,这个参数值太大,在不同的浏览器中适配也会成为问题。如果把最外层的id为”inner”的div加上一个position属性,它的值是relative,进行相对位置处理,里面的人物身份图像作absolute设置,绝对定位处理,这样人物身份图像不管如何定位,都不会脱离relative相对定位元素的限制。只要将绝对定位的人物身份定义其right右侧的距离值和top距上侧的距离值即可。代码如下。

<html><head><title>三国杀界面</title><style>#outer{width:233px;height:250px;background:url(jiang/jzhangfei_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}</style></head><body><div id="outer"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div></div></div></body>
</html>

从代码中看,id为identify的身份标识div嵌套到id为inner的div中,identify身份标识div中有一个img标签,img图像标签的图片路径用src来进行标识,src中的值就是img图片的具体路径。在css设置中,把id为inner的div设置position的属性值为relative,即相对定位,把id为identify的div设置position的属性值为absolute,即绝对定位,然后就可以定义identify的div的right值和top值,调整人物身份的具体显示位置。代码显示的结果如下图所示。

从上图的结果上看,“反贼”的身份标识就显示在三国杀人物外框的右边。

接下来,再进行四个心型血值的显示,用一个div包裹心型血值的图像,这四个心型血值的img标签也可用div分别进行包裹,这样4个心型血值图片就可以竖向排列起来了。然后也是把包裹4颗心型血值的最外层div 定义position属性值为absolute,即绝对定位,定位其right值和top值,来实现位置上的调整,代码如下。

<html><head><title>三国杀界面</title><style>#outer{width:233px;height:250px;background:url(jiang/jzhangfei_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}</style></head><body><div id="outer"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div></div></div></body>
</html>

代码中,有id为blood的div,其中包含有四个div,每个div中有一个标签img,img的src属性指向的是心型血量的图片,用div包裹的原因是需要进行竖向排列处理,接下来在css中调置这个id为blood的div样式,其样式中,调整position的定位为绝对定位,设置绝对定位的right右侧的值及top上侧的值,两个值的交叉点确定血量值的位置。代码显示的结果如下图所示。

从界面显示的结果上来看,“反贼”的身份标识下面有四个心型血量值图案也显示在三国杀人物外框的右边。

下面处理右下角显示的4,即英雄玩家手拿的卡牌数。

这里还是用一个div包裹起来一个数字4,然后对这个div设置position的属性值是absolute, 同时设置bottom距下面的距离值和right右侧的距离值,还要注意设置数字4的字体,字号,横向居中和竖向居中,中间对齐的css可以使用text-align:center这样的css语句来设置,竖向居中可以使用line-height结合height高度来设置,line-height的值与height的高度值一致,就可以达到竖向居中的效果。代码如下。

<html><head><title>三国杀界面</title><style>#outer{width:233px;height:250px;background:url(jiang/jzhangfei_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div id="outer"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></body>
</html>

从代码上看,在id为inner的div中又添加了一个id为num的div,包裹起来一个数字4,然后定义css样式position的定位方式,absolute绝对定位,font-size字体设置,color进行字体颜色设置,bottom底部位置设置,right右侧边距位置设置。显示的效果如下图所示。

从图中的效果上看,这样第一个英雄的设置就设置成功了。

三、三国杀群殴界面七个玩家英雄的布局

在三国杀身份8人局中,群殴界面中有7个是占据三国杀界面2/3的范围,这些英雄玩家div是一个接着一个排列起来的,可以理解成div块状元素进行浮动设置,经过浮动设置的div就会一个挨着一个排列起来。在排列之前首先设置三国杀界面的大背景,如下图所示。

根据背景的大小是1200*800,可以全界面网页文件body元素中设置一个大的div,大小为width设置成1200,height高设置为800,这样一个大的三国杀群殴背景就设置成功了。代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}</style></head><body><div  id="bg"></div></body>
</html>

代码中直接定义一个id为bg的div,然后定义其css样式为width宽度,height高度,以及background背景图片的内容。代码显示的效果如下图所示。

把之前设置的一个武将拷贝过来,把最外层的div设置成左浮动,即将原id为outer的div在css样式中添加一条float:left语句即可。代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}#outer{width:233px;height:250px;background:url(jiang/jzhangfei_1200.jpg) no-repeat;float:left;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div  id="bg"><div id="outer"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></div></body>
</html>

从代码上看,css样式代码中id 为outer的div添加了一条float:left,让这个英雄的div块状元素进行左浮动的设置,为了让之后的英雄块状元素都能够设置左浮动,把outer这个id的标志改成class标志,这样做可以把background背景图片css设置语句单独拿出来,利用class选择器可以复用的原则,将两个class选择器共同作用在原来是id为outer的div上面,这样,对于后面的英雄,只需要定义不同的英雄背景图片即可完成三国杀2/3界面中七位英雄玩家的设置。先看将id为outer的div改成背景英雄class和通过配置class共同作用的代码。代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}.outer{width:233px;height:250px;float:left;}.hero1{background:url(jiang/jzhangfei_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div  id="bg"><div class="outer hero1"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></div></body>
</html>

代码中把css中原来是#outer改成了.outer,在.outer中把background语句提出了出来,形成新的类选择器hero1,定义hero1的类选择器中的语句是background设置英雄的背景图片,再把html中英雄div原来是id=”outer”,现在改成class=”outer hero1”的形式,变成由类选择器outer和类选择器hero1共同作用的英雄div。这样的代码显示结果如下图所示。

从图中的结果上看,三国杀群殴的8人局中已有了其中一个将张飞,下面复制张飞的html的代码,粘贴到张飞的div下面,代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}.outer{width:233px;height:250px;float:left;}.hero1{background:url(jiang/jzhangfei_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div  id="bg"><div class="outer hero1"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero1"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></div></body>
</html>

在浏览器中打开这个页面,页面中就有了第二个张飞的界面,如下图所示。

现在把代码中的hero1变成hero2,换成另外一个将的图片,代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}.outer{width:233px;height:250px;float:left;}.hero1{background:url(jiang/jzhangfei_1200.jpg) no-repeat;}.hero2{background:url(jiang/jcaocao_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div  id="bg"><div class="outer hero1"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero2"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></div></body>
</html>

代码中在css中又定义了一个类选择器hero2,用background语句,把其中的背景图设置为曹操的图片,然后把第二个class=”outer” 的英雄标签中添加上hero2的类选择器名称,显示的网页结果如下图所示。

把这样的英雄div一直复制下去,再去修改class的名称,不断产生英雄,这样第一行的五位英雄就会依次产生,代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}.outer{width:233px;height:250px;float:left;}.hero1{background:url(jiang/jzhangfei_1200.jpg) no-repeat;}.hero2{background:url(jiang/jcaocao_1200.jpg) no-repeat;}.hero3{background:url(jiang/jguanyu_1200.jpg) no-repeat;}.hero4{background:url(jiang/jzhenji_1200.jpg) no-repeat;}.hero5{background:url(jiang/jzhaoyun_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div  id="bg"><div class="outer hero1"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero2"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero3"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero4"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero5"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></div></body>
</html>

代码中css中新定义了hero3,hero4,hero5三个类选择器,分别修改背景为不同的英雄名字,关羽,甄姬和赵云,然后在英雄的div中分别在class=“outer”中加入另外一个类选择器hero3,hero4和hero5。显示的网页结果如下图所示。

接下来排列第二行的英雄元素,第二行的英雄元素也可以直接复制原张飞的div元素,只不过需要把中间的三个英雄div元素中的内容删除掉就可以,也不需要设置hero的class类选择器,相当于中间有3个占位div而已,但这3个占位div中是没有内容的,只是一个空div而已。代码如下。

<html><head><title>三国杀界面</title><style>#bg{width:1200px;height:800px;background:url(image/bgfight01.jpg) no-repeat;}.outer{width:233px;height:250px;float:left;}.hero1{background:url(jiang/jzhangfei_1200.jpg) no-repeat;}.hero2{background:url(jiang/jcaocao_1200.jpg) no-repeat;}.hero3{background:url(jiang/jguanyu_1200.jpg) no-repeat;}.hero4{background:url(jiang/jzhenji_1200.jpg) no-repeat;}.hero5{background:url(jiang/jzhaoyun_1200.jpg) no-repeat;}.hero6{background:url(jiang/jsunshangxiang_1200.jpg) no-repeat;}.hero7{background:url(jiang/jxiaoqiao_1200.jpg) no-repeat;}#inner{width:229px;height:248px;background:url(image/vaiqu.png) no-repeat;position:relative;}#identify{position:absolute;right:5px;top:10px;}#blood{position:absolute;right:13px;top:70px;}#num{position:absolute;right:16px;bottom:6px;font-size:25px;color:white;}</style></head><body><div  id="bg"><div class="outer hero1"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero2"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero3"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero4"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero5"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer hero6"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div><div class="outer"></div><div class="outer"></div><div class="outer"></div><div class="outer hero7"><div id="inner"><div id="identify"><img src="data:image/vfan.png"/></div><div id="blood"><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div><div><img src="data:image/vhongtao.png"/></div></div><div id="num">4</div></div></div></div></body>
</html>

代码中css中定义了新的类选择器hero6和hero7,分别设置了hero6和hero7的background属性,其值是孙尚香的将图片和小乔的将图片,在html代码中,复制的张飞将的div分别在class=”outer”类选择器使用上加入了hero6和hero7的class类选择器的名称,注意,在hero6和hero7类选择器作用的class类之间的div标签,只有class=”outer”的类选择器作用的属性,其中的div中间是没有内容的,只是占位来使用的。显示的结果如下图所示。

从上图的效果上来看,三国杀中参与群殴的七个将已经准备就绪了,排列的很成体系。下面就等着主角的登场了。

代码的github地址:https://github.com/wawacode/sanguosha_layout

B站视频教程地址:三国杀界面布局1-DIV+CSS实现七个英雄排座次(https://www.bilibili.com/video/BV1jK411F7g2/)

Web前端布局实战:三国杀页面布局(上)相关推荐

  1. web前端(12)—— 页面布局2

    本篇博文,主要就讲定位的问题,也就是页面布局里最重要的,本篇博文不出意外的话,也是css的最后一篇博文了 定位,position属性 定位有三种: 相对定位 绝对定位 固定定位 相对定位,positi ...

  2. 【web前端开发 | CSS】页面布局之盒子模型

    思维导图 文章目录 思维导图 1:边框 2:内边距 3:外边距 外边距合并 1. 相邻块元素垂直外边距的合并 2. 嵌套块元素垂直外边距的塌陷 所谓 盒子模型:就是把 HTML 页面中的布局元素看作是 ...

  3. 【web前端开发 | CSS】页面布局之定位

    思维导图 (案例放在文章结尾) 文章目录 思维导图 一:定位 1.1:静态定位(position:static:) 1.2:相对定位(position:relative:) 1.3:绝对定位(posi ...

  4. 前端布局实战:三国杀页面布局(下)

    前端布局实战:三国杀页面布局(下) 四.三国杀群殴界面第8人主角玩家的布局 从案例开始的最终结果图显示,首先要设置牌区,而牌区在整个三国杀布局图的最底部中间的位置,在牌区的上面需要有一段距离,这段距离 ...

  5. WEB前端项目实战/酒仙网开发-李强强-专题视频课程

    WEB前端项目实战/酒仙网开发-204人已学习 课程介绍         WEB前端项目实战/酒仙网开发 课程收益     WEB前端项目实战/酒仙网开发 讲师介绍     李强强 更多讲师课程    ...

  6. web前端基础知识:html布局如何应用?

    网站布局 大多数网站会把内容安排到多个列中(就像杂志或报纸那样). 可以使用 或者 元素来创建多列.CSS 用于对元素进行定位,或者为页面创建背景以及色彩丰富的外观. 提示即使可以使用 HTML 表格 ...

  7. 前端必经之路:CSS页面布局(深入理解浮动布局、定位布局、圣杯布局和双飞翼布局等重要布局方案)

    建筑师在对一栋建筑物进行施工之前,首先会根据建筑图纸上的平面图.立体图.剖面图和构造详图等对建筑物进行整体布局后再从局部施工(当然不排除有先装修完厕所再砌卧室围墙的奇葩).在一个网页页面的搭建过程中, ...

  8. Vue React Angular之三国杀,web前端入坑第六篇 上

    「 懒癌引发血案 」 目前前端技术栈发生了翻天覆地的变化,上篇刚写了只会jquery 要失业,再不学新的你就要被淘汰,虽然有点危言耸听,不过现实情况确实是这样. vue.react.angular对比 ...

  9. Vue、React、Angular之三国杀,web前端入坑第六篇(上)

    「 懒癌引发血案 」 目前前端技术栈发生了翻天覆地的变化,上篇刚写了只会jquery 要失业,再不学新的你就要被淘汰,虽然有点危言耸听,不过现实情况确实是这样. vue.react.angular对比 ...

最新文章

  1. 综述|计算机视觉中的注意力机制
  2. 如何利用LabelImg将标注文件在YOLO格式与PascalVOC格式间相互转换
  3. nova7修屏逛校园2021-07-07
  4. 985女研究生连算法都不会,还面试什么大厂!
  5. Python Django 打印执行过的查询语句
  6. 在SqlServer存储过程中使用Cursor(游标)操作记录
  7. 传统的线性降维方法效果不佳。_机器学习西瓜书简明笔记(11)降维与度量学习...
  8. 包一艘船给年轻人玩剧本杀,飞猪这波创新你怎么看?
  9. 【干货】2021新消费品牌STEP增长方法论:品牌营销与生意增长Playbook.pdf(附下载链接)...
  10. ue4模型为啥这么亮_坐好了,仔细听,资深建模师介绍UE4视口中的可视化模式(一)...
  11. Hanselminutes播客247-从敏捷顾问到John Wilger的敏捷团队成员
  12. 计算机视觉算法 面试必备知识点(2022)
  13. win10无法装载iso文件_iso镜像安装失败无法安装Windows10解决教程
  14. CAD填充块Hatch的深度解析
  15. 突破封锁——MAC地址欺骗
  16. OSChina 周四乱弹 ——1000万没了!因为这个孩子在家这样
  17. “凸现”三围的健身运动法(图)
  18. macOS下快速复制文件或文件夹路径
  19. 有什么提升技术能力的网站
  20. C++:从入门到放弃[3]计算

热门文章

  1. 模拟电子技术实验作业(10)
  2. 使用Rufus 3.4制作Ubuntu 18.04.1 U盘启动盘的方法
  3. GIF动画导入到FLASH的应用
  4. linux美国GE公司扫描机器,美国GE 反射内存卡
  5. 一键批量导出好友联系方式
  6. 萌萌媛の【剑指offer笔记】二维数组中的查找
  7. 如果需要跳槽,自己该怎样去写简历?
  8. Stata导入dta文件出现中文乱码
  9. 【模电实验】电压比较器
  10. 最新世界大学自然指数排名:30所内地高校进入全球前 100 名!