发表于: 2016-06-25 23:32:38

2 1355


今天完成的事情:帮助黄钊铖解决git无法使用问题。任务7进行中,已经完成了2/3。



明天计划的事情:完成任务7



遇到的问题:

Q1:在使用<ul>、<li>、<inline-block>标签布局,严格按照PSD设计图计算发现有元素被挤到第二行了。

A1:一开始以为是某个元素带有边框,查了半天没有发现边框。后来想起来是否由于ul的缩进引起。

    google查找发现是由inline-block的元素之间会存在“4px”的空白间隔。并非边框和缩进引起。

    通过设置<ul>样式font-size: 0;来消除inline-block元素的间隔(在<li>中设置无效)。


Q2:为什么inline-block会有间隙产生?

A2:<ul><li>item1</li><li>item2</li><li>item3</li><li>item4</li><li>item5</li></ul>  

    上面这种写法就没有间隙,这回你明白了么。

    间隙产生详解:HTML 中的换行符、空格符、制表符等产生了空白符,而这些归根结底都是字符,那么

    它们的大小都是受 font-size 来控制的,字体大小直接导致 inline 或者 inline-block 后元素之间

    空隙的大小,把 inline-block 元素间的空隙认为总是某个固定大小是错误的。

参考文档:

inline-block 前世今生 http://www.iyunlu.com/view/css-xhtml/64.html

如何解决inline-block元素的空白间距 http://www.w3cplus.com/css/fighting-the-space-between-inline-block-elements


Q3:多行文字垂直居中

A3:设置<p>标签的样式为display: inline-block;vertical-align: middle;可以使元素成功垂直居中,

<p>标签的父元素不需要设置vertical-align: middle;,没有使用display:table-cell;

所以父元素不需要设置vertical-align: middle;。(如果设置了line-height,则需要设置padding来微调垂直居中效果)

参考文档:

大小不固定的图片、多行文字的水平垂直居中 

http://www.zhangxinxu.com/wordpress/2009/08/大小不固定的图片、多行文字的水平垂直居中/



收获:学会了多行文字垂直居中的一些用法。知道了inline-block间隙的来源及解决办法。感觉进度有点慢,得赶赶了。


设置ul{list-style:none;padding-left:0;margin-left:0px;}即可消除ul缩进。


因为没有完成任何一个页面,所以不贴成果展示和代码链接了。



返回列表 返回列表
评论

    分享到