2016-04-14 2 views
0

Ich render eine teilweise "Kalender/Show" in zwei separaten Ansichten. In einer Ansicht (Ansicht A) sieht es gut aus und die Schriftgrößen sind, was ich brauche, aber in der anderen Ansicht (Ansicht B) ist die Schriftgröße zu groß.Können Sie bestimmte CSS-Eigenschaften für eine Teilansicht in einer Ansicht ändern?

Ich frage mich, ob es möglich ist, die Schriftgröße nur für diesen Teil zu ändern, ohne den anderen in der anderen Ansicht zu beeinflussen. Dies ist der Code, den ich benutze (Ansicht B):

+0

Übergeben Sie eine lokale Variable wie: 'locals: {: sheets => ['foo.css']}}'. Und in Teil, überprüfen Sie, ob Blätter Variable vorhanden ist, iterieren darüber und 'include_stylesheets'? – kiddorails

+0

@kiddorails Stört es Sie, dies als Antwort zu erweitern? Ich bin neu bei Rails, also bin ich mir nicht ganz sicher, was Sie meinen –

Antwort

3

Dies ist wahrscheinlich kein Problem Schienen, aber eher wie ein CSS-Problem. Wenn Sie die Schriftgröße unterschiedlich für beide Ansichten steuern möchten, wickeln Sie es nur mit einem div:

<div class="calendar-a"> 
    <%= render 'calendars/show' %> 
</div> 

vs:

<div class="calendar-b"> 
    <%= render 'calendars/show' %> 
</div> 

Diese Lösung wäre viel sauberer als machen die teilweise erfordern spezifische Einheimischen in Um zu bestimmen, in welcher Ansicht es gerendert wird.

+0

ID-Selektor ist effizienter als Klassenselektor. – sawa

+0

Ja, in Bezug auf CSS-Selektor Leistung, sicher. Aber was, wenn mehrere Kalender auf derselben Seite sind? Hinzufügen von IDs hier scheint ein bisschen übertrieben. – jack

+0

Das OP möchte nicht wissen, ob es mehr als eine Instanz geben wird. Aber Sie können auch einfach die IDs '' für jede Version zuweisen (es sei denn, Sie wollten den direkten Kindoperator '>' im Selektor verwenden). – sawa

Verwandte Themen