嗨我在div里面有一些带有display:block的超链接。问题是单击时超链接的长度等于div的宽度。如何使超链接的单击长度仅等于超链接的文本而不指定每个链接的宽度? JSFiddle here
答案 0 :(得分:6)
使用
#links a {clear:left;float:left}
float
将允许对链接进行调整,clear
将阻止链接位于同一行。
根据您的设计,您可能需要在clear:left
容器中添加#links
。
修改强>
你提出的一个小教程:
有两种类型的元素,内联和块。内联线显示没有中断。块元素占据整行并移动到下一行。
内联元素的宽度或高度不能设置样式。块可以。
<a>
是一个内联元素。通过将其显示设置为阻止,您可以告诉它每次都创建一个新行。
float
给出元素内联行为,使它们在彼此旁边碰撞并流到下一行。 float
还允许您设置元素的宽度/高度。这是两者之间的混合。
clear属性会停止内联浮动并返回到正常的阻止行为(每次都是新行)。
您不需要同时display:block
和float:
。
另一个解决方案涉及display:inline-block
,但在多个浏览器中不支持此功能,因此不鼓励(尽管我发现它非常方便)。
答案 1 :(得分:1)
设置显示的链接样式:inline-block; (IE6中不支持)或浮动浮动:左;或浮动:正确;
答案 2 :(得分:1)
答案 3 :(得分:0)
你的意思是这样的:
<a href="example.com" style="text-decoration: none;">Foo</a>
答案 4 :(得分:0)
宽度:自动
或尝试 显示:内联;
链接
它不应该得到divs宽度