博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
img和div的宽度不一样问题和li之间空隙问题的解决方案
阅读量:5129 次
发布时间:2019-06-13

本文共 1345 字,大约阅读时间需要 4 分钟。

img和div宽度不一致问题

今天写代码,遇到一个小问题,我把一张图片放进一个div里,然后没有设置任何的padding和margin,但是发现图片和div的高度不一样,在img的下方出现了3px的空隙。

//html代码
//css代码div{display: inline-block;background-color: red;}img{width: 400px;}

效果如图:很明显能看到图片下面红色背景突出的地方。

1355903-20180524083633167-1741057518.png

审查元素,发现div的高度比img的高度多3px。

1355903-20180524083827465-122823946.png

1355903-20180524083901662-1121885765.png

通过百度之后了解到产生这个问题的原因:img是一种类似text的元素,在结束的时候,会在末尾加上一个空白符,所以就会多出3px。

而解决这个问题的方法也很简单,把img标签的display属性设置为block就好了。

//css代码img{width: 400px;    display:block;}

效果如图:1355903-20180524084230638-948218750.png

li间空隙问题

今天遇到的问题让我想到之前还遇到过的一个问题,当我想让ul的li横向排列时,把li的display的属性设置为inline-block,然后就发现,li之间不能紧挨着,有额外的空隙,通过设置padding和margin为0都不能消除这个间隙。

//html代码
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
//css代码div{display: inline-block;background-color: #000;}ul{padding: 0;margin: 0;}li{display: inline-block;list-style-type: none;width: 40px;height: 30px;background-color: red;color: #fff;}

效果图如下:可以清晰看到li之间黑色背景的间隙。

1355903-20180524115523655-926631297.png

我把margin-right设置为负值-8px之后,间隙才没有了,如下:

1355903-20180524120956397-634539900.png

1355903-20180524121013228-1769579235.png

通过百度之后,了解到产生这个问题的原因是:浏览器会把inline元素间的空白字符(空格、换行、Tab等)渲染成一个空格。而为了美观。我们通常是一个

放在一行,这导致换行后产生换行字符,它变成一个空格,占用了一个字符的宽度。

解决方法也很多:

  • 上面把margin设一个负值就是一种消除间隙的方法。
  • 给li标签设置浮动。
  • 将font-size设置为0,或者将letter-spacing设置为-8px,这种方法会导致其他字符的样式也会受到影响。
  • 还有一种在html代码上做修改,不用修改css的方法。加上注释,消除因换行带来的空白字符。如下:

//html代码 <div> <ul> <li>1</li><!-- --><li>2</li><!-- --><li>3</li><!-- --><li>4</li><!-- --><li>5</li><!-- --><li>6</li> </ul> </div>

转载于:https://www.cnblogs.com/yanqiu/p/9080981.html

你可能感兴趣的文章
void 与泛型计算
查看>>
C++随机数函数复习
查看>>
startActivity与startActivityForResult中的intent使用
查看>>
重新学习Java——对象和类(一)
查看>>
(转载)ubuntu 11.10 如何打开terminal(终端)
查看>>
SpringMVC拦截器配置
查看>>
WDK例子之键盘过滤驱动简单总结
查看>>
js 基础篇必看(点击事件轮播图的简单实现)
查看>>
perl中的pack与unpack
查看>>
《JavaScript高级程序设计》读书笔记(十):本地对象Date
查看>>
extentreports报告插件之extentX之服务搭建(三)
查看>>
windows 命令
查看>>
hdu4180 数论
查看>>
Vue(一)创建第一个Vue程序
查看>>
P3369 【模板】普通平衡树
查看>>
PHP100-第四讲 PHP5.4 运算符、流程控制
查看>>
build/core/config.mk
查看>>
Python--学习笔记5 numpy
查看>>
软工网络15个人作业1
查看>>
关于CMD/AMD和Common.js/Sea.js/Require.js
查看>>