HtmlElement.OffsetRectangle 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取元素相对于其父元素的位置。
public:
property System::Drawing::Rectangle OffsetRectangle { System::Drawing::Rectangle get(); };
public System.Drawing.Rectangle OffsetRectangle { get; }
member this.OffsetRectangle : System.Drawing.Rectangle
Public ReadOnly Property OffsetRectangle As Rectangle
属性值
元素的 x 坐标和 y 坐标位置及其宽度和高度相对于其父级。
如果元素的父元素相对或绝对定位, OffsetRectangle 则返回父元素的偏移量。 如果元素本身相对于其父元素相对定位, OffsetRectangle 则返回其父级的偏移量。
示例
下面的代码示例演示了OffsetParent如何OffsetRectanglespan1和不同,span2以及span3:
<HTML>
<BODY id="documentBody">
<DIV id="div1">
<SPAN id="span1">Placeholder text 1.</SPAN>
</DIV>
<DIV id="div2" style="position:relative;top:100px;left:100px;">
<SPAN id="span2">Placeholder text 2.</SPAN>
</DIV>
<DIV id="div3" style="position:absolute;top:200px;left:200px;">
<DIV id="div4" style="position:relative;top:100px;left:100px;">
<SPAN id="span3">Placeholder text 3.</SPAN>
</DIV>
</DIV>
</BODY>
</HTML>
private void GetOffsets()
{
String str = "";
HtmlDocument doc = webBrowser1.Document;
foreach (HtmlElement elem in doc.GetElementsByTagName("SPAN"))
{
str += "OffsetParent for " + elem.Id + " is " + elem.OffsetParent.Id;
str += "; OffsetRectangle is " + elem.OffsetRectangle.ToString() + "\n";
}
MessageBox.Show(str);
}
Private Sub GetOffsets()
Dim Str As String = ""
Dim Doc As HtmlDocument = WebBrowser1.Document
For Each Elem As HtmlElement In Doc.GetElementsByTagName("SPAN")
Str &= "OffsetParent for " & Elem.Id & " is " & Elem.OffsetParent.Id
Str &= "; OffsetRectangle is " & Elem.OffsetRectangle.ToString() & vbCrLf
Next
MessageBox.Show(Str)
End Sub
注解
元素可以通过以下三种方式之一定位在 HTML 页面上:
默认流定位。
相对定位,其中元素相对于其父元素的固定量偏移。
绝对定位,在该位置中,元素相对于文档左上角的固定坐标位置。
有关 HTML 中的元素定位的详细信息,请参阅 “关于元素定位”。