2016-06-22 18 views
0

Ich brauche ein div am oberen Rand der Seite mit position : fixed.Wie wird die korrekte Breite des Domknotens mit [position: fixed] eingestellt?

Wenn jedoch die Größe des Browsers geändert wird, ändert sich die Breite der div, da der übergeordnete Knoten des festen Knotens nicht der übergeordnete DOM-Knoten ist.

Wie kann ich position : fixed Knoten Breite entsprechend dem Elternknoten nicht Vollbild?

+2

Sie können nicht tun, dass mit einfachen CSS. Position fixiert ist immer in Bezug auf das Dokument und nie in Bezug auf sein Elternelement. Sie müssen JavaScript verwenden, um die Breite des benötigten Elements zu berechnen und dann auf das fixierte Element anzuwenden. –

Antwort

0

Sie können position:fixed relativ zu keinem Elternteil machen. Es ist immer das Browserfenster.

Sie können jedoch position:absolute relativ zu einem anderen Objekt machen. Mit margin Einstellungen von -x oder -y können Sie sogar den Mauszeiger über die ursprüngliche Position bewegen, aber immer noch relativ.

Um position:fixed oder absolute bezogen auf Fenstergröße oder übergeordnete Größe zu machen bzw. verwenden Prozent:

p { 
 
    position:fixed; 
 
    left:10%; 
 
    right:10%; 
 
    top:10%; 
 
    bottom:10%; 
 
    background-color:green; 
 
    }
<div> 
 
    <p>test</p> 
 
</div>