HtmlElement.OffsetParent Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
O elemento 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 no qual o elemento atual está aninhado. Se nenhum dos elementos acima do elemento atual estiver absolutamente ou relativamente posicionado, OffsetParent será a BODY marca do documento.
Exemplos
O exemplo de código a seguir mostra como OffsetParent e OffsetRectangle difere 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 em relação ao pai; e posicionamento absoluto, no qual o elemento recebe uma posição de coordenada fixa relativa ao canto superior esquerdo do documento.
Quando os elementos de um documento usam o 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.