span 元素无法设置宽度问题

span 元素为行内元素,没有width属性,需要转换为块级元素才可以设置width;

拓展:html元素分为块级元素,行内元素、可变元素。

行内元素与块级元素直观上的区别

1 、行内元素会在一条直线上排列,都是同一行的,水平方向排列

块级元素各占据一行,垂直方向排列。块级元素从新行开始结束接着一个断行。

2.块级元素可以包含行内元素和块级元素。行内元素不能包含块级元素。

3.行内元素与块级元素属性的不同,主要是盒模型属性上

行内元素设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效

行内元素转换为块级元素

display:block (字面意思表现形式设为块级)

                    display值:

描述
none 此元素不会被显示。
block 此元素将显示为块级元素,此元素前后会带有换行符。
inline 默认。此元素会被显示为内联元素,元素前后没有换行符。
inline-block 行内块元素。(CSS2.1 新增的值)
list-item 此元素会作为列表显示。
run-in 此元素会根据上下文作为块级元素或内联元素显示。
compact CSS 中有值 compact,不过由于缺乏广泛支持,已经从 CSS2.1 中删除。
marker CSS 中有值 marker,不过由于缺乏广泛支持,已经从 CSS2.1 中删除。
table 此元素会作为块级表格来显示(类似 <table>),表格前后带有换行符。
inline-table 此元素会作为内联表格来显示(类似 <table>),表格前后没有换行符。
table-row-group 此元素会作为一个或多个行的分组来显示(类似 <tbody>)。
table-header-group 此元素会作为一个或多个行的分组来显示(类似 <thead>)。
table-footer-group 此元素会作为一个或多个行的分组来显示(类似 <tfoot>)。
table-row 此元素会作为一个表格行显示(类似 <tr>)。
table-column-group 此元素会作为一个或多个列的分组来显示(类似 <colgroup>)。
table-column 此元素会作为一个单元格列显示(类似 <col>)
table-cell 此元素会作为一个表格单元格显示(类似 <td> 和 <th>)
table-caption 此元素会作为一个表格标题显示(类似 <caption>)
inherit 规定应该从父元素继承 display 属性的值。

引用 http://blog.csdn.net/sykent/article/details/7738408

时间: 2024-12-11 14:00:53

span 元素无法设置宽度问题的相关文章

将span元素设置为固定宽度和高度代码

将span元素设置为固定宽度和高度代码:本章节介绍一下如何给span元素设置固定宽度和高度,之所以要专门介绍一下,是因为默认状态下,给它添加和width和height属性并不能够起作用,代码如下: span{ width:200px; height:200px; } 这是因为span元素是内联元素,无法设置高度和宽度,只能够自适应内容大小,代码修改如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-

在不改变元素的显示属性的情况下,元素都是可以设置宽度的,并且能够设置成功,这句话是否正确?

在CSS中,html中的标签元素大体被分为三种不同的类型: 块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1>-<h6>.<ol>.<ul>.<dl>.<table>.<address>.<blockquote> .<form>  什么是块级元素?  在html中<div>.<p>.<h1>

css设置span元素的尺寸

css设置span元素的尺寸:在默认状态下是无法设置span元素的尺寸的,只能够根据内容的尺寸自适应,也就是说给span元素设置width和height属性默认条件是无效的.之所以会出现这种情况是因为span元素是内联元素,内联元素无法设置尺寸的,只要设置为块级或者内联块级元素即可.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name=&qu

&lt;span&gt; 无法设置宽度的完美解决方案!

在默认的情况下,利用css样式对span进行宽度设定是无效,但有时为了某种排版的要求,需要对span进行宽度设定,那么如何在html中利用css样式设定span的宽度? 思路:这看上去是个很简单的问题,似乎用style中的width属性就可以. 然而通过试验以后发现,无论是在Firefox还是IE中都无效. 在css2的标准中,查阅关于width的定义,我们可以发现,原来css中的width属性并不总是有效的,如果对象是inline对象,width属性就会被忽略.Firefox和IE都遵循了这个

get新技能: 如何设置元素高度与宽度成特定比例。宽度改变,高度自动按比例改变。 例如设置宽高比16:9。

设置宽高比在很多时候是有用的. 下面的栗子,我们设置一个容器的宽高比为16:9 //HTML代码片段 <div class="container"> <div class="wrapper"> <div class="content">content</div> </div> </div> //css 代码 div{ border: 1px solid green; } .c

span设置宽度有效无效问题

在html中如何设定span的宽度?这看上去是个很简单的问题,似乎用style中的width属性就可以.例如, 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 2 3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4 5 <html xmlns="http://www.w3.org/19

css中 Span 元素的 width 属性无效果原因及多种解决方案

先运行下程序看下: <span style='width:300px;'>123</span> 输出:123 可以看到 span会自动根据包含的内容来变化宽度 这是因为:对于内联元素(可以是默认即为内联的比如 span 元素,也可以是 display: inline 的元素) width 和 height 只在 IE5.x 下和 IE6 或更新版本的 quirks 模式下触发 hasLayout .而对于 IE6,如果浏览器运行于标准兼容模式下,内联元素会忽略 width 或 he

css中 Span 元素的 width 属性无效果原因及多种解决方案(转自http://www.cnblogs.com/hnyei/archive/2012/03/12/2392026.html)

先运行下程序看下: <span style='width:300px;'>123</span> 输出:123 可以看到 span会自动根据包含的内容来变化宽度 这是因为:对于内联元素(可以是默认即为内联的比如 span 元素,也可以是 display: inline 的元素) width 和 height 只在 IE5.x 下和 IE6 或更新版本的 quirks 模式下触发 hasLayout .而对于 IE6,如果浏览器运行于标准兼容模式下,内联元素会忽略 width 或 he

为什么a标签不能设置宽度?

为什么a标签不能设置宽度?在a标签上用css设置宽度没有任何反应,到底是为什么那? 因为行内元素都是不能设置宽高的,a标签也是行内元素,所以也不能设置宽度,如果想设置宽度,必须把行内元素转换为block或者inline-block,转换为块block的话,元素会独占一行,有可能会改变你的布局, 如果想继续保持元素在一样上面,可以设置行内块inline-block,设置为行内块后可能会出现该元素和邻近元素不在一个水平线上,解决方法就是设置vertical-align: middle; 或者 ver