Partilhar via


HtmlElement.OffsetParent Propriedade

Definição

Obtém o elemento do qual OffsetRectangle é calculado.

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

Valor da propriedade

HtmlElement

O elemento do qual os deslocamentos são calculados.

Se o pai de um elemento ou outro elemento na hierarquia do elemento usar posicionamento absoluto ou relativo, OffsetParent será o primeiro elemento posicionado de forma relativa ou absoluta no qual o elemento atual está aninhado. Se nenhum dos elementos acima do elemento atual estiver absolutamente ou relativamente posicionado, OffsetParent será a marca BODY do documento.

Exemplos

O exemplo de código a seguir mostra como OffsetParent e OffsetRectangle diferem para span1, span2 e 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

Comentários

Os elementos podem ser posicionados em uma página HTML de uma das três maneiras: posicionamento de fluxo padrão; posicionamento relativo, no qual o elemento é deslocado por um valor fixo relativo ao pai; e o posicionamento absoluto, no qual o elemento recebe uma posição de coordenada fixa em relação ao canto superior esquerdo do documento.

Quando os elementos de um documento usam um posicionamento relativo ou absoluto, você pode usar OffsetParent para calcular a posição de coordenada de um elemento na área do cliente.

Para obter mais informações sobre o posicionamento do elemento em HTML, consulte Sobre o Posicionamento do Elemento.

Aplica-se a

Confira também