关于html元素的 width属性无效果的解决方法

1.关于元素的 width属性无效果 先运行下程序看下: [html]background-color:#336699;width:300px;’>123 [/html]可以看到 span会自动根据包含的内容来变化宽度 这是因为:对于background-color(可以是默认即为内联的比如 span 元素,也可以是1.关于元素的 width属性无效果
先运行下程序看下:

提示:您可以先修改部分代码再运行

可以看到 span会自动根据包含的内容来变化宽度
这是因为:对于内联元素(可以是默认即为内联的比如 span 元素,也可以是 background-color: inline 的元素)
width 和 height 只在 IE5.x 下和 IE6 或更新版本的 quirks 模式下触发 hasLayout 。而对于 IE6,如果浏览器运行于标准兼容模式下,内联元素会忽略 width 或 height 属性,所以设置 width 或 height 不能在此种情况下令该元素具有 layout。
具有“layout” 的元素如果同时也 display: inline ,那么它的行为就和标准中所说的 inline-block 很类似了:在段落中和普通文字一样在水平方向和连续排列,受 background-color 影响,并且大小可以根据内容自适应调整。这也可以解释为什么单单在 IE/Win 中内联元素可以包含块级元素而少出问题,因为在别的浏览器中 display: inline 就是内联,不像 IE/Win 一旦内联元素拥有 layout 还会变成 inline-block。
解决方法:
去掉ASP.NET页面的W3C标准声明(不推荐):

123
推荐:
如果设置display:block,width属性生效,但是此时的span跟p一样了。
如果设置display:inline-block,则span并列在同行,而且width属性生效。

元素display属性的常见值说明:
block:块对象的默认值。将对象强制作为块对象呈递,为对象之后添加新行。
inline:内联对象的默认值。将对象强制作为内联对象呈递,从对象中删除行。(内联)《CSS权威指南》中文字显示:任何不是块级元素的可见元素都是内联元素。其表现的特性是“行布局”形式,这里的“行布局”的意思就是说其表现形式始终以行进行显示。比如,我们设定一个内联元素border-bottom:1px solid #000;时其表现是以每行进行重复,每一行下方都会有一条黑色的细线。假如是块级元素那么所显示的的黑线只会在块的下方出现。
inline-block:将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内。
non:隐藏对象。与 background-color 属性的hidden值不同,其不为被隐藏的对象保留其物理空间。
内联(display:inline;)元素不能设置宽高,因为内联属于行布局,其特性是在一行里进行布局,所以不能被设定宽高。
display:inline-block;’>123

如果设置float:left | right,width属性生效.
(浮动)他使得指定元素脱离普通的文档流而产生的非凡的布局特性。并且FLOAT必需应用在块级元素之上,也就是说浮动并不应用于内联标签。或者换句话来说当应用了FLOAT那么这个元素将被指定为块级元素。
123
2.Css display:inline属性与float的区别
Display:inline;属性的作用就是使块级元素变成行内元素,比如p这样的,设置inline属性以后,就会不再单独占据一行的位置了。不过使用float 属性页同样可以实现这样的效果。 (关于行内元素和块级元素请看行内元素和块级元素)
当元素设置成为inline属性,变成行内元素以后,设置width属性也就没有效果了。
看完display:inline对块级元素的影响以后,我们再来看看float对行内元素的影响
也就是当行内元素设置float属性以后,实际上他已经认为他是块级元素了,可以设置 width属性了

以上就是关于html元素的 width属性无效果的解决方法的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3123106.html

(0)
上一篇 2025年3月29日 18:30:36
下一篇 2025年3月29日 18:31:10

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • CSS魔法堂:hasLayout原来是这样!

    前言 过去一直听说旧版本ie下很多诡异bug均由一个神秘角色引起的,那就是haslayout。趁着最近突然发神经打算好好学习css,顺便解答多年来的疑惑。 hasLayout到底是何方神圣? hasLayout可以简单看作是IE5.5/6/…

    编程技术 2025年3月29日
    100
  • CSS轮廓outline用法详解

    前面的话   轮廓outline处在边框边界的外面,它不像边框那样参与到文档流中,因此轮廓出现或消失时不会影响文档流,即不会导致文档的重新显示。利用轮廓,浏览器可以合并部分轮廓,创建一个连续但非矩形的形状。默认地,轮廓是一个动态样式,只有元…

    编程技术 2025年3月29日
    100
  • 关于CSS中的outline-style

      outline (轮廓)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。outline 属性设置元素周围的轮廓线。   要始终在 outline 属性之前声明 outline 属性。元素只有获得轮廓以后才能改变其轮廓…

    编程技术 2025年3月29日
    100
  • CSS border-width 属性使用教程

    border-width — 定义四个边框的宽度 取值:{1,4} | inherit {1,4}: 边框宽度(可以有一个,两个,三个或四个值) inherit:border-width 初始值: medium 继承性: 否 适…

    编程技术 2025年3月29日
    100
  • css border-bottom用法详解

    border-bottom(指定下边线的样式、宽度及颜色) border-bottom: 值; border-bottom-style:值; border-bottom-color: 值; border-bottom-bottom:值; 如…

    编程技术 2025年3月29日
    100
  • CSS生成的内容技术

    介绍 该content物业是在CSS 2.1引入生成的内容添加到:before和:after伪元素。所有主流浏览器(Firefox 1.5+,Safari 3.5+,IE 8+,Opera 9.2+,Chrome 0.2+)都支持此功能。此…

    编程技术 2025年3月29日
    100
  • css中的content: "."的作用

    有一个p作为外部容器,内部的p如果设置了float样式,则外部的容器p导致不能被撑开,在应用clearfix的元素的结尾添加content中的内容,就达到了撑开容器的目的这段代码中的content: “.”;有什么用…

    编程技术 2025年3月29日
    100
  • CSS中关于list-style属性的使用详解

    -type — 定义列表样式 取值:disc | circle | square | decimal | decimal-leading-zero | lower-roman | upper-roman | lower-gree…

    编程技术 2025年3月29日
    100
  • CSS:list-style列表样式的用法详解

    解析css列表样式属性list-style 平时制作页面中可对属性list-style在list-item对象中常用,但用的都不深。一般都设为none重置整个页面就差不多OK,可能很多人包括本人对属性css列表样式更细节方面的属性并不是很了…

    编程技术 2025年3月29日
    100
  • CSS: list-style修改列表属性控制li标签样式

    list_style属性用于修改列表的属性,列表的属性用于设置列表项类型,列表的属性用于设这列表项位置,列表的属性用于设置使用图像替换列表项标记 list_style属性用于修改列表的属性  格式如下:  list_style:列表项标记类…

    编程技术 2025年3月29日
    100

发表回复

登录后才能评论