css是否仅用于成对标记?
我试图理解css,我尝试的第一件事是:css是否仅用于成对标记?,css,tagging,Css,Tagging,我试图理解css,我尝试的第一件事是: <div style=" height: 100px; width: 100px; border: 1px solid black"/> <div style=" height: 100px; width: 100px; border: 1px solid red"/> 及 谁能解释一下发生了什么事?我认为应该没有区别。。到目前为止,我只经历了纯xml,所以这对我来说有点令
<div style="
height: 100px;
width: 100px;
border: 1px solid black"/>
<div style="
height: 100px;
width: 100px;
border: 1px solid red"/>
及
谁能解释一下发生了什么事?我认为应该没有区别。。到目前为止,我只经历了纯xml,所以这对我来说有点令人沮丧
还有一个附带问题。。它是如何显示整个内容的?我假设第一件事是浏览器构建DOM树,它通常根据元素的顺序显示。css也一样,只是样式定义了一点变化吗?我的意思是,样式表中的规则是在显示某个具体元素时首次应用的,其中没有其他技巧。对吗?CSS可以应用于任何“标记”,但使用
是不正确的。div
标记始终需要结束标记:
<div><!-- HTML here --></div>
要查看它是否适用于自动关闭标记;)
答。我不确定您的DIV问题是否基于CSS,我认为这更像是浏览器解释的问题。浏览器希望div包含内容,但可能无法正确呈现这些内容。XHTML与XML兼容,但它本身不是XML(这意味着它不遵守XML的所有规则) CSS是否适用于自动关闭标签,例如IMG或HR
你的第二个问题似乎是对的。浏览器有效地缓存样式表,并在DOM中看到相关标记时应用样式。你永远不会真正看到这一切发生,因为它通常是在对页面进行任何绘图之前完成的。如果动态添加带有CSS引用的DOM标记,它将自动采用样式表中定义的样式
应该有内容,所以它们不是自动关闭标签。CSS属性很好,但标记不正确。如前所述,div
元素需要开始和结束标记……除非您在某些示例中执行了以下操作:
<div />
或者
这是一个自动关闭(空)div
因此,对于CSS测试,您可能不想使用
——而是使用Foo
。毫无疑问,您使用的是文本/html内容类型的XHTML
这是一种旨在简化从HTML到XHTML的转换的技术,因此人们可以在浏览器支持XHTML之前就开始使用XHTML。十年过去了,Internet Explorer仍然不支持它,我又回到了HTML
因为您使用的是这种技术,所以必须编写与HTML解析器和XML解析器兼容的XHTML。这意味着以下方面,包括:
如果元素允许内容(例如div元素),但该元素的实例没有内容(例如空节),则不要使用“最小化”标记语法(例如
)
不允许包含内容的元素被定义为“空”元素,可以很容易地在上找到。如果您确实想要自动关闭div:
application/xhtml+xml
),但请注意,您需要这样做
然后,这将如您所期望的那样显示您的div,但根据我的经验,提供好的旧HTML 4 strict会省去很多麻烦。不正确-它并不总是需要结束标记
或
是完全有效的XHTML,它将创建一个空的、自动关闭的div
元素。你们都对了一半
在XHTML中很好,但在与HTML兼容的XHTML中就不行了(虽然它不需要内容,但它需要一个结束标记)。@David:你是对的,我把符号弄混了,例如,
和
。不,我实际上想要的是没有文本的空框:),因此它有点不合逻辑,自动关闭标记是不够的,不过我得习惯:)你用的是哪种浏览器?它应该适用于现代浏览器:我使用mozilla,在我描述的第一个例子中,它在同一个位置显示黑框和红框,但黑框上显示的每个方向都有一个像素移动。在第二种情况下,这是我真正想要的,红色的盒子在黑色的盒子下面。@愚蠢的傻瓜:你应该解释一下你在问题中看到了什么。仅仅是给出CSS代码,我认为应该没有什么区别,很难猜测您面临什么问题。一张截图就好了。
<img src="path/to/some/image" style="border:5px solid black;" />
<div />
<div/>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">