HtmlElement.OffsetParent HtmlElement.OffsetParent HtmlElement.OffsetParent HtmlElement.OffsetParent Property


OffsetRectangle を計算するときの基準となる要素を取得します。Gets the element from which OffsetRectangle is calculated.

 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


オフセットを計算するときの基準となる要素。The element from which the offsets are calculated.

要素の親、または要素の階層に含まれる別の要素が、相対位置または絶対位置を使用している場合、OffsetParent は、相対位置または絶対位置を使用している要素のうち、現在の要素が入れ子になっている最初の要素です。If an element's parent or another element in the element's hierarchy uses relative or absolute positioning, OffsetParent will be the first relatively or absolutely positioned element in which the current element is nested. 現在の要素の上位にある要素が絶対位置または相対位置OffsetParentにない場合、はドキュメントの本文タグになります。If none of the elements above the current element are absolutely or relatively positioned, OffsetParent will be the BODY tag of the document.

次のコード例は、 OffsetParent 、、およびspan1span2 span3のとOffsetRectangleの違いを示しています。The following code example shows how OffsetParent and OffsetRectangle differ for span1, span2 and span3:

    <BODY id="documentBody">  
        <DIV id="div1">  
            <SPAN id="span1">Placeholder text 1.</SPAN>  
        <DIV id="div2" style="position:relative;top:100px;left:100px;">  
            <SPAN id="span2">Placeholder text 2.</SPAN>  
        <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>  
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";

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

End Sub


要素は、既定のフローの配置という3つの方法のいずれかで HTML ページに配置できます。要素が親を基準とした固定量でオフセットされる相対位置。および絶対配置。要素には、ドキュメントの左上隅を基準とした固定の座標位置が指定されます。Elements can be positioned on an HTML page in one of three ways: default flow positioning; relative positioning, in which the element is offset by a fixed amount relative to its parent; and absolute positioning, in which the element is given a fixed coordinate position relative to the upper-left corner of the document.

ドキュメントの要素が相対位置または絶対位置を使用する場合OffsetParentは、を使用して、クライアント領域で要素の座標位置を計算できます。When a document's elements use relative or absolute positioning, you can use OffsetParent to calculate an element's coordinate position in the client area.

HTML での要素の配置の詳細については、「要素の配置について」を参照してください。For more information about element positioning in HTML, see About Element Positioning.