发表于: 2018-10-28 23:03:42

1 832


2018/10/27

今日完成:

基本完成任务7的页面布局,学会margin重叠时怎么处理,学会制作带箭头的对话框,以及学会如何实现半透明的footer并按钮不会透明化。


1、带箭头的对话框绘制,通过div的伪类:after,给他添加content,调整content的边距来达到三角形效果,border-left和border-right的宽度来改变箭头的宽度,border-top的边框宽度改变箭头的长短。

.dialogBox{
height: 0.82rem;
   width: 100%;
   margin-top: 0.7rem;
   background-color: #b9e9f5;
   position: fixed;
   line-height: 0.82rem;
   font-size: 0.26rem;
   color: #464646;
}
.dialogBox:after{
content: "";
   border-top: solid 0.20rem #b9e9f5;
   border-left: solid 0.15rem #00800000;
   border-right: solid 0.15rem #00800000;
   position: absolute;
   left: 11.25%;
   top: 100%;
}


2、投票页面每个玩家的方块上,hover时会出现4个操作选择。

百度的资料是A和B元素在同一个父元素内,B元素默认隐藏display:none,A元素默认显示,当鼠标移动到A元素时可以当成是移动到父元素上,父级获得一个鼠标hover的状态,来定义鼠标移动到父级身上时,B元素的显示方式。

由于我的布局B元素已经用了display:flex,不能再设为display:none,所以尝试用visibility:hidden;  鼠标hover状态时visibility:visible,也能达到效果.。但是有区别的:

visibility属性指定一个元素是否是可见的,即使不可见的元素也占据空间。

diplay:none  元素不可见,也不占用空间。


 3、使用background:rgba(m n)和opacity的区别:

background:rgba(m n)使footer半透明,可以让按钮不受透明的影响。 如果用opacity,元素容器内子元素全部继承,即全都会跟着半透明。


遇到的问题:

布局页面三时,导致图标设置了margin值但是不会下移,产生的原因是margin与父元素重叠了。

防止外边距重叠参考资料:https://blog.csdn.net/qq_24235325/article/details/50773765

外边距重叠是指两个垂直相邻的块级元素,当上下两个边距相遇时,起外边距会产生重叠现象,且重叠后的外边距,等于其中较大者。

另一个重叠现象是当一个元素包含在另一个元素之中时,子元素与父元素之间也会产生重叠现象,重叠后的外边距,等于其中最大者:

外边距重叠的意义

外边距的重叠只产生在普通流文档的上下外边距之间,这个看起来有点奇怪的规则,其实有其现实意义。设想,当我们上下排列一系列规则的块级元素(如段落P)时,那么块元素之间因为外边距重叠的存在,段落之间就不会产生双倍的距离。

防止外边距重叠解决方案:

1.外层元素padding代替

2.内层元素透明边框 border:1px solid transparent;

3.内层元素绝对定位 postion:absolute:

4.外层元素 overflow:hidden;

5.内层元素 加float:left;或display:inline-block;

6.内层元素padding:1px;



明日计划:思考如何实现将几个页面之间的链接跳转加上,思考音乐播放按钮怎样实现用鼠标点击播放与暂停,调整完善任务7局部布局,并查看学习代码规范,根据规范调整代码。



返回列表 返回列表
评论

    分享到