<div> 和 <span> 是完全 interchangable ?
本帖最后由 asicsfree 于 2017-7-13 19:14 编辑制做字典时,若以后人修改 css 方便为考量,全部用 <div> 或 <span>吗?
有时 <span> 是比较合理,但是似乎全部都可以在 css 用 display: 把 <div> 改为 <span>?
会有什么可能 <span> <div> 无法互相取代的吗? 可以啊
不过<div> 会有行空白 貌似
很有意思的问题。我简单做了点调研,不能完全回答楼主的问题,不过可以提供一些信息。
最早 HTML 里是没有<span> 标签的,<div> 比 <span> 早得多。
- <div> November 24, 1995 HTML 2.0 was published as IETF RFC 1866 https://tools.ietf.org/html/rfc1866
- <span> January 1997: RFC 2070https://tools.ietf.org/html/rfc2070
<!-- <SPAN> Generic inline container-->
<!-- <SPAN DIR=...> New counterflow embedding -->
<!-- <SPAN LANG="...">Language of contents -->
https://www.stylusstudio.com/xsllist/handler.asp?/xsllist/199904/post10740.html
It's a bit unfair to pick on the SPAN element. It was introduced in
RFC 2070:
First, a generic container is needed to carry the LANG and DIR (see
below) attributes in cases where no other element is appropriate; the
SPAN element is introduced for that purpose.
<div> 块级标签 会自成一行(前后都有换行 适合于段落) <span> 则不会
这两个标签 在HTML 里的作用都是 本身没有任何意义 完全是为了方便 CSS 排版 而添加这些标签
加上 class id 等属性 方便选取 div 应该用在自成一块的文本上 div 中包括数个 span
但不能用 div span 本身来进行排版 HTML 标签只是赋予文本意义 排版要交给 CSS 来
display: inline 的确可以让 div 变成 span 但是你一开始加标签的时候就应该考虑到了
除非是 HTML 是别人加的 你又有特殊的排版需求 才这么干
其他标签比如 <p> 不仅有 div 的效果 还赋予了文本“段落”这一涵义 所以叫做 HTML 超文本“标记”语言
作用是标记 不是排版
还有 <br /> 也类似 这是用于 文本内部强制换行用的 不要用来换行排版
如果需要空白 用 CSS 的 margin-bottom CSS 功能本身很强大 不需要 HTML 来帮忙
HTML 只是为了方便 CSS 选取的所以 div 和 span 很明显无法相互替代 blkserene 发表于 2017-7-15 12:26
块级标签 会自成一行(前后都有换行 适合于段落)则不会
这两个标签 在HTML 里的作用都是 本身没有任何 ...
一看就是高手啊...
想请教个问题, 烦请不吝赐教:
HTML:
<span class="A">1234567890</span>
<span class="B">0987654321</span>
CSS:
.A{display: block;}
若在不改变 .A 的块属性的前提下, 有没啥办法让 B 的内容跟在 A 后面, 而不是单独另起一行, 也就是把 B 的内容也加入到 A 的块里面去...
span + block ---> div .... --> inline-block 试试 EarthWorm 发表于 2017-7-19 05:30
一看就是高手啊...
想请教个问题, 烦请不吝赐教:
没有 这种情况本来 写HTML的时候就应该组织好
写成<span class="a">1234567890<span class="b">0987654321</span></span>
或者可以强行尝试用 浮动 但是浮动不是为了这种情况才存在的 而且本身用不好很容易出问题 多谢楼上两位的答复.
我找到办法了, 只不过没有实用价值: 用负 margin 可以做到, 但问题是垂直方向倒是容易定位, 水平方向若 A 的字符串长度固定则问题不大, 若 A 的字符串长度不固定, 则水平方向无法定位, 所以没有实用价值.
关于负 margin, 有兴趣的可以看看这篇文章, 很有意思: http://www.hicss.net/i-know-you-do-not-know-the-negative-margin/
页:
[1]