<style type="text/css">
div,p{background:pink;}
</style>
</head>
<body>
<div>div1</div>
<div>div2</div>
<p>段落1段<div>落1段落1</div>段落1段落1</p>
</body>
练习题里:原先P标签内都有粉丝背景色,增加<div>...<div>后,</div>段落1段落1</p>就没背景颜色了!这是为何??
p里不能嵌套div(及其他block元素)。“</div>段落1段落1” 这里是没有css样式的,前面的“<p>段落1段<div>“自动补全了</p>,所以显示背景。
这是DTD(文档类型定义)里的规则
The P element represents a paragraph. It cannot contain block-level elements (including P itself).
P表现的是一个段落。不能包含块级(block)元素(包括P自身)。
We discourage authors from using empty P elements. User agents should ignore empty P elements.
我们不鼓励使用空的P标签,因为浏览器会忽略空的P标签。
随笔一则,仅供参考:
今天工作也不是很忙,做调试提示框时候发现了两个苦恼的问题,整了很久我也没有知道是啥原因。所以赶紧请教同事。
o(︶︿︶)o 唉,不是惭愧,那个解决问题的方法是我不知道的,我以前也没有看到过,不过现在明白了就写下来以后记住就好了~
第一个我在p标签里嵌套了一个div,结果网页上总是显示的代码和写的代码不同,同事告诉我,p标签上不能嵌套div
第二个是背景图片显示定位的问题,我在写css的时候显示把背景定位写到上面,背景图片紧挨其后,在页面显示的效果图片是有那个阴影,但是怎么也不会出来小图标。我急了,这是咋回事呢?想了许久还是不知道,
结果同事一眼就看出来了,要把背景图片写在背景图片定位的上面去,这样就好了。。
哦哦哦,原来是这样的,知道html 在网页上是从上到下读的,就没有想到css也是这样的,哈哈哈~~~
div默认是block方式显示,会单独撑开一行,所以会把P撑开。
而div默认没有外边距,p有上下边距,所以p中的div会距离上边的内容有边距