2016-12-02 4 views
1

ist es möglich, diese Patern in CSS mit Responsive Design zu erstellen, so dass Hintergrundlinie immer an der richtigen Position ist und die richtige Höhe nicht mather, wie groß die Größe des Fensters ist.CSS responsive Höhe von div hinter dem Kreis

enter image description here

+0

Wahrscheinlich. Was hast du probiert? Sehen Sie, wie Sie [ein minimales Beispiel erstellen] (http://stackoverflow.com/help/mcve) –

Antwort

3

Sie können Pseudo-Elemente verwenden, um dies zu schaffen, aber perfekt ansprechenden Kreis erstellen Sie vh Einheiten sowohl auf height und width des Kreis verwenden können. Dann können Sie einfach position: absolute und transform: translate() verwenden, um Pseudo-Elemente zu positionieren.

body { 
 
    height: 100vh; 
 
    display: flex; 
 
    align-items: center; 
 
    justify-content: center; 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 
.circle { 
 
    position: relative; 
 
    width: 60vh; 
 
    height: 60vh; 
 
    border-radius: 50%; 
 
    background: #E54B4B; 
 
} 
 
.circle:before, 
 
.circle:after { 
 
    content: ''; 
 
    position: absolute; 
 
    transform: translate(-50%, -50%); 
 
    top: 50%; 
 
    left: 50%; 
 
} 
 
.circle:before { 
 
    transform: translate(-50%, -50%); 
 
    width: 100vw; 
 
    background: #B65657; 
 
    height: 20vh; 
 
    z-index: -1; 
 
} 
 
.circle:after { 
 
    height: 20vh; 
 
    width: 20vh; 
 
    background: white; 
 
}
<div class="circle"></div>

+0

Oh, ich habe diese Transformation noch nie gesehen. Das habe ich gesucht. Vielen Dank. –

+0

Gern geschehen. –