HtmlElement.OffsetParent Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém o elemento a partir 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 de Propriedade
O elemento a partir do qual os deslocamentos são calculados.
Se o pai de um elemento ou outro elemento na hierarquia do elemento usar posicionamento relativo ou absoluto, OffsetParent será o primeiro elemento relativamente ou absolutamente posicionado em que o elemento atual está aninhado. Se nenhum dos elementos acima do elemento atual estiver absolutamente ou relativamente posicionado, OffsetParent será a BODY etiqueta do documento.
Exemplos
O seguinte exemplo de código 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
Observações
Os elementos podem ser posicionados numa página HTML de três formas: posicionamento padrão do fluxo; posicionamento relativo, em que o elemento é deslocado por uma quantidade fixa em relação ao seu pai; e posicionamento absoluto, em que o elemento recebe uma posição coordenada fixa em relação ao canto superior esquerdo do documento.
Quando os elementos de um documento usam posicionamento relativo ou absoluto, pode usar-se OffsetParent para calcular a posição de coordenadas de um elemento na área do cliente.
Para mais informações sobre posicionamento de elementos em HTML, consulte Sobre o Posicionamento de Elementos.