HtmlElement.OffsetParent Właściwość

Definicja

Pobiera element, z którego OffsetRectangle jest obliczany.

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

Wartość właściwości

HtmlElement

Element, z którego są obliczane przesunięcia.

Jeśli element nadrzędny lub inny element w hierarchii elementu używa pozycjonowania względnego lub bezwzględnego, będzie pierwszym stosunkowo lub bezwzględnie umieszczonym elementem, OffsetParent w którym jest zagnieżdżony bieżący element. Jeśli żaden z elementów powyżej bieżącego elementu nie jest absolutnie lub stosunkowo umieszczony, OffsetParent będzie tagiem BODY dokumentu.

Przykłady

W poniższym przykładzie kodu pokazano, jak OffsetParent i OffsetRectangle różni się w przypadku span1elementów i span3: span2

<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

Uwagi

Elementy można umieścić na stronie HTML na jeden z trzech sposobów: domyślne pozycjonowanie przepływu; względne pozycjonowanie, w którym element jest przesunięty o stałą kwotę względem jego elementu nadrzędnego; i położenie bezwzględne, w którym element ma stałą pozycję współrzędnych względem lewego górnego rogu dokumentu.

Gdy elementy dokumentu używają pozycjonowania względnego lub bezwzględnego, można użyć OffsetParent do obliczenia położenia współrzędnych elementu w obszarze klienta.

Aby uzyskać więcej informacji na temat pozycjonowania elementów w kodzie HTML, zobacz About Element Positioning (Informacje o pozycjonowaniu elementów).

Dotyczy

Zobacz też