css布局:a标签下的img会出现多余的一条线,刚开始在下面,用vertical-align后,出现在右边。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了css布局:a标签下的img会出现多余的一条线,刚开始在下面,用vertical-align后,出现在右边。相关的知识,希望对你有一定的参考价值。

img样式大概是display:inline-block;border:none;vertical-align:middle;text-align:center;width:100px;height:142px
是在hover的时候

在进行页面的DIV CSS排版时,遇到IE6(当然有时Firefox下也会偶遇)浏览器中的图片元素img下出现多余空白的问题绝对是常见的对于该问题的解决方法也是“见机行事”。

1、将图片转换为块级对象

即,设置img为“display:block;”。在本例中添加一组CSS代码:“#sub img display:block;”。

2、设置图片的垂直对齐方式

即设置图片的vertical-align属性为“top,text-top,bottom,text-bottom”也可以解决。如本例中增加一组CSS代码:“#sub img vertical-align:top;”。

3、设置父对象的文字大小为0px

即,在#sub中添加一行:“font-size:0;”可以解决问题。但这也引发了新的问题,在父对象中的文字都无法显示。就算文字部分被子对象括起来,设置子对象文字大小依然可以显示,但在CSS效验的时候会提示文字过小的错误。

4、改变父对象的属性

如果父对象的宽、高固定,图片大小随父对象而定,那么可以设置“overflow:hidden;”来解决。如本例中可以向#sub中添加以下代码:“width:88px;height:31px;overflow:hidden;”。

5、设置图片的浮动属性

即在本例中增加一行CSS代码:“#sub img float:left;”。如果要实现图文混排,这种方法是很好的选择。

6、取消图片标签和其父对象的最后一个结束标签之间的空格

这个方法要强调下,在实际开发中该方法可能会出乱子,因为在写代码的时候为了让代码更体现语义和层次清晰,难免要通过IDE提供代码缩进显示,这必然会让标签和其他标签换行显示,比如说DW的“套用源格式”命令。所以说这个方法可以供我们了解出现BUG的一种情况,具体解决方案的还得各位见招拆招了。追问

设置vertical-align:middle 在右边的中间出现,

参考技术A a:hovertext-decoration:none;

追问

不是下划线的问题,没有下划线,在下面的时候,用vertical-align:middle对准基线后就出现在右边了

追答

其实不太明白的你的问题是什么,要不你参考这篇博文看下,看是否能解决你的问题
http://www.cnblogs.com/JoannaQ/archive/2013/03/16/2962443.html

参考技术B

我遇到的问题应该跟这个也类似 在用a标签包裹img标签后依次排放会出现多余的一条线 

用font-size设置为0虽然也可以 但是会影响margin和padding参数 所以我直接用display解决了 横向inline-block 纵向block

上面为未处理 下面为处理后

css(背景)画出纵向的一条线 - 纯css3纵向时间轴

效果图

核心代码

.oneBoxForRecord 
  padding-top: 10rpx;
  /* #e5e5e5是页面背景色,#CCC是纵向线条的灰色 */
  background: linear-gradient(to right, #e5e5e5 0%, #e5e5e5 23px, #CCC 24px, #e5e5e5 25px, #e5e5e5 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;

background-size: 100% 100%; 代表背景色占据容器100%高、宽
background-repeat: no-repeat;  代表不重复

background: linear-gradient(to right, #e5e5e5 0%, #e5e5e5 23px, #CCC 24px, #e5e5e5 25px, #e5e5e5 100%);
代表背景色从左到右,
0%位置-至-左起23px位置的颜色为#e5e5e5渐变到#e5e5e5 (其实是一样的颜色)
左起23px-至-左起24px位置的颜色为#e5e5e5渐变到#CCC (1像素宽纵线)
左起24px-至-左起25px位置的颜色为#CCC渐变到#e5e5e5 (1像素宽纵线)
左起25px-至-最右边(100%)位置的颜色为#e5e5e5渐变到#e5e5e5 (其实是一样的颜色)

 

完整代码uniapp

<template>
	<view>
		
		
		<view class="padding40 marginCol30">
			<view class="oneBoxForRecord">
				
				<view class="rowStart colAlignItemsCenter">
					<view class="col rowEnd width30px">
						<view class="bgColorWhite border3RpxBlue radius50pct width10px height10px"></view>
					</view>
					<view class="col paddingRow20 colorGray">
						09:50
					</view>
					<view class="col">
						产品推广
					</view>
				</view>
				<view style="padding-left: 40px;" class="colorGray paddingBottom40">
                    郑州市XX股份有限公司
				</view>
				
			</view>
		</view>
		
		
		
		
	</view>
</template>

<script>
	export default 
		components: ,
		data() 
			return 
				
			
		,
		onReady() 
			
		,
		methods: 
			
		
	
</script>

<style>
	.oneBoxForRecord 
		padding-top: 10rpx;
		background: linear-gradient(to right, #e5e5e5 0%, #e5e5e5 23px, #CCC 24px, #e5e5e5 25px, #e5e5e5 100%);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		
	
</style>

推荐没有广告的百度首页

百度绿色版 - Rudon滨海渔村https://baidu.rudon.cn

封面

 

以上是关于css布局:a标签下的img会出现多余的一条线,刚开始在下面,用vertical-align后,出现在右边。的主要内容,如果未能解决你的问题,请参考以下文章

img标签与span一起使用不在同一条线上

UITableView - 出现在单元格之间的一条线

如何在HTML中画一条线

img外头包着a时底部出现的一小段高度的解决方法。图片水平垂直居中用css解决的方法。

解决img标签上下出现间隙的方法

html 怎么把手标放在图片上才会出现小手