html a标签怎样设置宽高,a标签如何设置高度和宽度
Posted yinghualeihenmei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html a标签怎样设置宽高,a标签如何设置高度和宽度相关的知识,希望对你有一定的参考价值。
https://blog.csdn.net/weixin_30344519/article/details/117859933
https://www.yzktw.com.cn/post/14740.html
我们直接设置html代码中的a标签高度和宽度是不会起作用的,这是因为a标签属于内联元素标签,而内联元素不支持设置宽度(width)和高度(height),那么, a 标签如何设置宽度和高度。
为什么设置a标签宽高无效
a标签属于内联元素(也叫行内元素),而内联元素默认的css样式属性是display:inline,直接设置内联元素的宽度(width)和高度(height)是无效的,因为内联元素的宽高是随其内容的宽度和高度大小而变化的;当内联元素中存在文本时,其高度由文本的字体大小所决定;
上图代码演示中,我们设置了a标签的宽高都是130px,还设置了背景颜色为红色,
a
width:130px;
height:130px;
background:red;
之所以设置背景颜色为红色,即background:red,这样做的话,a标签所占有的区域就会显示为红色,那么,我们就能清楚的观察到a标签宽度和高度的变化了;
在代码中,我们虽然设置了宽度和高度都是130px,但发现a标签的文字内容,也就是“刘代码博客”五个汉字的宽高和背景红色的高宽是一致的(如下如所示),可见,我们设置a标签的高宽并没有发生变化,也就意味着,我们直接对a标签设置宽度和高度是不起作用的(如下如所示)!
不仅仅是a标签在默认情况下,直接设置宽度和高度是无效的,而且几乎所有的内联元素和a标签一样,设置宽度和高度也是无效的!
设置a标签宽高的三种方法
想要让a标签的宽度和高度起作用,我们可以通过以下三种方法实现:
1、将内联元素a标签转化成块级元素
在a标签的CSS样式中设置:display:block,就可以将a标签转化成块级元素,如下图所示:
由上图可知,在CSS样式中设置:display:block,将a标签转化成块级元素后,设置的高度和宽度都起作用了,但我们还发现,a标签的文字内容没有居中,这样也会影响布局!
我们可以在CSS样式中设置text-align: center(水平居中)和line-height: 130px(垂直居中);line-height属性值要和a标签的高度一致,才能保持垂直居中!
2、将内联元素a标签转化成内联块级元素:
在a标签的CSS样式中设置:display:inline-block,将内联元素的a标签转化成内联块级元素,如下图所示:
从上图中我,可以看见将a标签转化成内联块级元素(inline-block)后,设置的宽度和高度也生效了!
3、使用float属性将a标签设置为浮动状态
在CSS样式中给a标签设置为 float属性(float:left/right), 让它变成浮动状态后,就可以设置宽度和高度了*(如下图所示),但缺点可能会造成与其它文字内容重叠。
最后总结
1、当a标签能设置宽度后,可以使用CSS样式属性:text-align: center进行水平居中;设置了高度后,就可以设置CSS样式属性line-height的值进行垂直居中,但要注意的是,line-height的属性值要和高度保持一致才能正确显示垂直居中;
2、将内联元素的a标签转化成块级元素(block)后,就会独占一行显示,如果不想独占一行,可以将a标签转化为内联块级元素(inline-block),因为内联块级元素是不会独占一行显示的!
3、网上有些文章提到,使用padding(内边距)和margin(外边距)属性设置a标签的左右边距来模拟a标签的宽度!
如何给a标签设置宽高
以上是关于html a标签怎样设置宽高,a标签如何设置高度和宽度的主要内容,如果未能解决你的问题,请参考以下文章
CSS标签显示模式 ④ ( 标签显示模式示例 | 设置行内元素宽高 | 设置鼠标经过样式 | 设置文字水平居中 | 设置文字垂直居中 | 文本行高与盒子高度关系 )