HtmlElement.OffsetParent Свойство

Определение

Получает элемент, из которого вычисляется OffsetRectangle.

public:
 property System::Windows::Forms::HtmlElement ^ OffsetParent { System::Windows::Forms::HtmlElement ^ get(); };
public System.Windows.Forms.HtmlElement OffsetParent { get; }
member this.OffsetParent : System.Windows.Forms.HtmlElement
Public ReadOnly Property OffsetParent As HtmlElement

Значение свойства

HtmlElement

Элемент, по которому вычисляются смещения.

Если родительский элемент или другой элемент в иерархии данного элемента использует относительное или абсолютное расположение, значением OffsetParent будет первый элемент с относительным или абсолютным расположением, в который вложен текущий элемент. Если ни один из элементов над текущим элементом не располагается абсолютно или относительно расположен, OffsetParent будет тегом BODY документа.

Примеры

В следующем примере кода показано, как OffsetParent и OffsetRectangle отличаются для span1, 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-странице одним из трех способов: размещение потока по умолчанию; относительное положение, в котором элемент смещается фиксированной величиной относительно родительского элемента; и абсолютное положение, в котором элемент получает фиксированную позицию координат относительно левого верхнего угла документа.

Если элементы документа используют относительное или абсолютное положение, можно использовать для OffsetParent вычисления положения координат элемента в клиентской области.

Дополнительные сведения о расположении элементов в HTML см. в разделе "Сведения о расположении элементов".

Применяется к

См. также раздел