2016-08-17 1 views
1

I administrative eine seite, wo es ein logo gibt, das links ausgerichtet ist.center logo responsive zwei klassen

Die HTML und CSS für das Logo ist auf der Suche wie folgt aus:

HTML

<div class="logo-container"> 
     <a href="@homePage.Url"> 
      <img src="/img/logo-white.svg" data-svg-fallback="/img/logo-white.png" alt="@logoAltText" class="img-responsive logo"/> 
     </a> 
    </div> 

CSS

@mixin img-responsive($display: block) { 
    display: $display; 
    max-width: 100%; // Part 1: Set a maximum relative to the parent 
    height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching 
} 

Ich habe eine Landingpage zu machen, wo das Logo zentriert. Deshalb dachte ich, meine Landingpage auf mich wie so tun konnte:

HTML

<div class="logo-container"> 
    <a href="@homePage.Url"> 
     <img src="/img/logo-white.svg" data-svg-fallback="/img/logo-white.png" alt="@logoAltText" class="landingpage img-responsive logo"/> 
    </a> 
</div> 

CSS

.landingpage img-responsive logo { 
    margin: 0 auto; 
} 

ist, dass nicht richtig?

+0

Verwendung Siehe { margin: 0 auto ; } – San

Antwort

0

Um ein Multi-Class-Ereignis auswählen, die Räume zwischen den Klassen-Selektoren entfernen:

.landingpage.img-responsive.logo { 
    margin: 0 auto; 
} 

margin: 0 auto; ein guter Weg ist, ein Element auf Blockebene zu zentrieren, die kleiner ist als Containerelement ist. Abhängig von Ihrem Markup möchten Sie möglicherweise text-align: center; auf dem Eltern verwenden.

+0

Vielen Dank für den Kommentar. Der HTML sollte immer noch lauten: class = "landingpage img-responsive logo, richtig? –

+0

Es funktioniert immer noch nicht, also vielleicht gibt es einige erben. Könnte ein Hack sein, ein neues Logo img zu machen, und dann mein CSS dafür verwenden? Ich habe nur einen Rahmen um das Logo in der gleichen Klasse gesetzt, und das kommt gut an. Aber das Logo ist immer noch nicht zentriert. –

+0

Ja im HTML-Attribut, die Klassen sind räumlich getrennt 'class =" landingpage img-responsive logo "' Um Ihnen wirklich zu helfen und das Problem zu identifizieren, müssen wir eine Beispielseite mit Ihrem gesamten Markup sehen – andreas

0

img-responsive ist eine Klasse, daher müssen Sie sie mit einer . verwenden. .img-responsive und .logo und .landingpage in der gleichen Klasse sind, so dass Sie Raum wie diese entfernen sollen:

.landingpage.img-responsive.logo{ 
margin: 0 auto; 
} 

die element element selector und die diese .landingpage.img-responsive.logo And selector

+0

Vielen Dank für den Kommentar.Der HTML sollte immer noch: class = "landingpage img-responsive logo, oder? –

+0

Ja, aber wenn es nicht funktioniert, können Sie überprüfen, ob eine andere css-Eigenschaft diese Datei gelöscht hat. – ElChapo