2017-10-12 3 views
-1

Mes lettres de mon bouton sont coupées chaque fois que je fais ma fenêtre plus petite. Je ne suis pas sûr de savoir comment mettre en œuvre une solution. J'ai fourni le CSS et le HTML. J'ai également fourni une image pour une meilleure compréhension. Je sais que je dois changer ou ajouter quelque chose dans le css mais je ne sais pas quoi.Lettres se coupant du bouton quand je fais ma fenêtre plus petite

Je ne suis pas sûr de savoir comment implémenter une solution. J'ai fourni le CSS et le HTML. J'ai également fourni une image pour une meilleure compréhension.

enter image description here

.button { 
 
\t display: inline-block; 
 
\t position: relative; 
 
\t cursor: pointer; 
 
\t outline: none; 
 
\t white-space: nowrap; 
 
// \t margin: 5px; 
 
\t padding: 0 22px; 
 
\t font-size: 14px; 
 
\t font-family: 'Roboto', sans-serif, 'Lato'; 
 
\t height: 40px; 
 
    width: 220px; 
 
\t line-height: 40px; 
 
\t background-color: #428bca; 
 
\t color: #FFF; 
 
\t font-weight: 600; 
 
\t text-transform: uppercase; 
 
\t letter-spacing: 1px; 
 
\t border: none; 
 
\t text-shadow: 1px 1px 1px rgba(0,0,0,0.2); 
 
    margin: 0 auto; 
 
    text-align: center; 
 

 
} 
 
.panel-title { 
 
    margin-top: 0; 
 
    margin-bottom: 0; 
 
    font-size: 16px; 
 
    color: #ffffff; 
 
} 
 

 
.panel-heading { 
 

 
    color: #428bca; 
 
    background-color: #428bca; 
 
    border-top: 1px solid #dddddd; 
 
    \t border-left: 1px solid #dddddd; 
 
    border-right: 1px solid #dddddd; 
 
    //border-top-right-radius: 3px; 
 
    //border-top-left-radius: 3px; 
 
} 
 

 
.panel-body { 
 
    padding: 15px; 
 
    border: 1px solid #dddddd; 
 
} 
 
.nobottommargin { 
 
    margin-bottom: 0 !important; 
 
} 
 
.leftmargin-sm { 
 
    margin-left: 30px !important; 
 
} 
 

 
.button.button-rounded { 
 
\t border-radius: 3px; 
 
} 
 

 
.button.button-reveal { 
 
\t padding: 0 28px; 
 
\t overflow: hidden; 
 
} 
 

 
.button.button-large { 
 
\t padding: 0 26px; 
 
\t font-size: 16px; 
 
\t height: 46px; 
 
\t line-height: 46px; 
 
} 
 

 
.button-teal { 
 
\t background-color: #428bca; 
 
} 
 

 
/*code for the icon */ 
 
.button-reveal i { 
 
    position: absolute; 
 
    width: 2em; 
 
    height: 100%; 
 
    line-height: 45px; 
 
    background-color: rgba(0, 0, 0, .2); 
 
    text-align: center; 
 
    left: -100%; 
 
    transition: left 0.25s ease; 
 
} 
 
.button-reveal:hover i { 
 
    left: 0; 
 
} 
 
/* code for the letters*/ 
 
.button-reveal span { 
 
    display: inline-block; 
 
    margin: 0 2em; 
 
    transition: margin 0.35s ease; 
 
} 
 
.button-reveal:hover span { 
 
    margin: 0 1em 0 3em; 
 
}
<div class="panel-heading"> 
 
\t \t \t \t \t \t \t \t <h2 class="panel-title">Access This Service</h2> 
 
\t \t \t \t \t \t \t </div> 
 

 
<div class="panel-body"> 
 
    <!-- angular --> 
 
    \t \t 
 
    <div ng-if="c.html" ng-bind-html="c.html"></div> 
 

 
<a href="http://zoom.us" class="button button-rounded button-reveal button-large button-teal"><i class="fa fa-forward" aria-hidden="true"></i> 
 
    <span>Go there now!</span></a><br> 
 

 
Note: If you haven’t accessed Zoom before, create a new account at <a href="http://zoom.us">zoom.us</a>. 
 
</div>

enter image description here

+0

Le problème est le rembourrage autour des lettres. Je suppose que lorsque vous réduisez la fenêtre, la barre latérale se rétrécit, tout comme le bouton. Vous pouvez lui donner une largeur minimale, comme proposé par une réponse, mais cela pourrait empêcher votre barre latérale de rétrécir. Vous pouvez également réduire le remplissage en utilisant '@ media' pour contrôler les styles de bouton sous une certaine largeur de fenêtre. – jfeferman

+0

min-largeur désordre avec mon bouton lui-même. Comment utiliser @media? – crucl

Répondre

0

il suffit d'ajouter min-width à votre bouton et il sera bien

.button { 
 
    display: inline-block; 
 
    position: relative; 
 
    cursor: pointer; 
 
    outline: none; 
 
    white-space: nowrap; 
 
    // \t margin: 5px; 
 
    padding: 0 22px; 
 
    font-size: 14px; 
 
    font-family: 'Roboto', sans-serif, 'Lato'; 
 
    height: 40px; 
 
    width: 220px; 
 
    line-height: 40px; 
 
    background-color: #428bca; 
 
    color: #FFF; 
 
    font-weight: 600; 
 
    text-transform: uppercase; 
 
    letter-spacing: 1px; 
 
    border: none; 
 
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2); 
 
    margin: 0 auto; 
 
    text-align: center; 
 
} 
 

 
.panel-title { 
 
    margin-top: 0; 
 
    margin-bottom: 0; 
 
    font-size: 16px; 
 
    color: #ffffff; 
 
} 
 

 
.panel-heading { 
 
    color: #428bca; 
 
    background-color: #428bca; 
 
    border-top: 1px solid #dddddd; 
 
    border-left: 1px solid #dddddd; 
 
    border-right: 1px solid #dddddd; 
 
    //border-top-right-radius: 3px; 
 
    //border-top-left-radius: 3px; 
 
} 
 

 
.panel-body { 
 
    padding: 15px; 
 
    border: 1px solid #dddddd; 
 
} 
 

 
.nobottommargin { 
 
    margin-bottom: 0 !important; 
 
} 
 

 
.leftmargin-sm { 
 
    margin-left: 30px !important; 
 
} 
 

 
.button.button-rounded { 
 
    border-radius: 3px; 
 
} 
 

 
.button.button-reveal { 
 
    padding: 0 28px; 
 
    overflow: hidden; 
 
} 
 

 
.button.button-large { 
 
    padding: 0 26px; 
 
    font-size: 16px; 
 
    height: 46px; 
 
    line-height: 46px; 
 
} 
 

 
.button-teal { 
 
    background-color: #428bca; 
 
} 
 

 

 
/*code for the icon */ 
 

 
.button-reveal i { 
 
    position: absolute; 
 
    min-width: 2em; 
 
    height: 100%; 
 
    line-height: 45px; 
 
    background-color: rgba(0, 0, 0, .2); 
 
    text-align: center; 
 
    left: -100%; 
 
    transition: left 0.25s ease; 
 
} 
 

 
.button-reveal:hover i { 
 
    left: 0; 
 
} 
 

 

 
/* code for the letters*/ 
 

 
.button-reveal span { 
 
    display: inline-block; 
 
    margin: 0 2em; 
 
    transition: margin 0.35s ease; 
 
} 
 

 
.button-reveal:hover span { 
 
    margin: 0 1em 0 3em; 
 
}
<div class="panel-heading"> 
 
    <h2 class="panel-title">Access This Service</h2> 
 
</div> 
 

 
<div class="panel-body"> 
 
    <!-- angular --> 
 

 
    <div ng-if="c.html" ng-bind-html="c.html"></div> 
 

 
    <a href="http://zoom.us" class="button button-rounded button-reveal button-large button-teal"><i class="fa fa-forward" aria-hidden="true"></i> 
 
    <span>Go there now!</span></a><br> Note: If you haven’t accessed Zoom before, create a new account at <a href="http://zoom.us">zoom.us</a>. 
 
</div>

+0

J'ai juste essayé ça et ça n'a pas marché. Si je le change en min-width je vais jouer avec la taille de mon bouton si je fais aussi mes fenêtres plus petites. – crucl

0

Une voie possible consiste à utiliser @media query pour contrôler le remplissage d'options et d'autres attributs de style lorsque la fenêtre est redimensionnée en dessous d'une certaine largeur.

Considérez ce qui suit:

@media (max-width: 800px) { 
    .button.test { 
    padding: 0px; 
    } 
} 

Cela dit que si la fenêtre est inférieure à 800px fixé padding 0 sur l'élément avec button et test classes de style. Lorsque la fenêtre est redimensionnée au-dessus de 800px large, ce sélecteur n'est pas appliqué.

L'extrait ci-dessous montre un bouton avec et sans application de requête @media. J'ai placé la requête à la fin de la feuille de style afin que le remplissage ne soit pas surchargé par d'autres classes. Vous pouvez également le placer en haut de votre fichier, mais vous devez ensuite faire attention à ce que l'ordre en cascade ne remplace pas vos styles.

Affichez l'extrait en ligne, puis cliquez sur "full page" pour voir le changement de remplissage sur le second bouton.

.button { 
 
    display: inline-block; 
 
    position: relative; 
 
    cursor: pointer; 
 
    outline: none; 
 
    white-space: nowrap; 
 
    padding: 0 22px; 
 
    font-size: 14px; 
 
    font-family: 'Roboto', sans-serif, 'Lato'; 
 
    height: 40px; 
 
    line-height: 40px; 
 
    background-color: #428bca; 
 
    color: #FFF; 
 
    font-weight: 600; 
 
    text-transform: uppercase; 
 
    letter-spacing: 1px; 
 
    border: none; 
 
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2); 
 
    margin: 0 auto; 
 
    text-align: center; 
 
} 
 

 
.panel-heading { 
 
    color: #428bca; 
 
    background-color: #428bca; 
 
    border-top: 1px solid #dddddd; 
 
    border-left: 1px solid #dddddd; 
 
    border-right: 1px solid #dddddd; 
 
    //border-top-right-radius: 3px; 
 
    //border-top-left-radius: 3px; 
 
} 
 

 
.panel-body { 
 
    padding: 15px; 
 
    border: 1px solid #dddddd; 
 
} 
 

 
.nobottommargin { 
 
    margin-bottom: 0 !important; 
 
} 
 

 
.leftmargin-sm { 
 
    margin-left: 30px !important; 
 
} 
 

 
.button.button-rounded { 
 
    border-radius: 3px; 
 
} 
 

 
.button.button-reveal { 
 
    padding: 0 28px; 
 
    overflow: hidden; 
 
} 
 

 
.button.button-large { 
 
    padding: 0 26px; 
 
    font-size: 16px; 
 
    height: 46px; 
 
    line-height: 46px; 
 
} 
 

 
.button-teal { 
 
    background-color: #428bca; 
 
} 
 

 

 
/*code for the icon */ 
 

 
.button-reveal i { 
 
    position: absolute; 
 
    width: 2em; 
 
    height: 100%; 
 
    line-height: 45px; 
 
    background-color: rgba(0, 0, 0, .2); 
 
    text-align: center; 
 
    left: -100%; 
 
    transition: left 0.25s ease; 
 
} 
 

 
.button-reveal:hover i { 
 
    left: 0; 
 
} 
 

 

 
/* code for the letters*/ 
 

 
.button-reveal span { 
 
    display: inline-block; 
 
    margin: 0 2em; 
 
    transition: margin 0.35s ease; 
 
} 
 

 
.button-reveal:hover span { 
 
    margin: 0 1em 0 3em; 
 
} 
 

 
@media (max-width: 800px) { 
 
    .button.test { 
 
    padding: 0px !important; 
 
    } 
 
}
<div>Button NOT affected by @media</div> 
 

 

 
<a href="http://zoom.us" class="button button-rounded button-reveal button-large button-teal"><i class="fa fa-forward" aria-hidden="true"></i> 
 
    <span>Go there now!</span></a> 
 

 
<div style="margin-top:20px;">Button affected by @media</div> 
 

 
<a href="http://zoom.us" class="button test button-rounded button-reveal button-large button-teal"><i class="fa fa-forward" aria-hidden="true"></i> 
 
    <span>Go there now!</span></a>

+0

Je viens de l'essayer mais ça n'a pas marché. Regardez l'image que je viens de fournir – crucl

+0

Eh bien, vous devez appliquer l'exemple à votre cas spécifique. La requête média fonctionne - si vous inspectez le DOM, vous verrez que la règle est appliquée quand la fenêtre est '> 800px'. Vous pouvez essayer de déterminer à quelle largeur vous voyez un problème sur votre page et appliquer un style conditionnel à l'aide de la requête @media. Vous pouvez modifier le remplissage ou même remplacer tous les styles et générer un bouton qui correspond. – jfeferman

+0

J'ai essayé d'utiliser différentes tailles de px mais cela ne semble pas fonctionner. :( – crucl