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 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.