【问题标题】:How to display the social media icons on the top-right in mobile phone view?如何在手机视图的右上角显示社交媒体图标?
【发布时间】:2019-03-03 11:00:55
【问题描述】:

我的社交媒体图标在笔记本电脑和平板电脑视图中都位于右上角,但是当我跳转到手机视图时,单击切换按钮后,它们与主导航(主页、联系人等)一起垂直列出,相反,我希望它们保持在右上角。 我知道代码有问题(我正在使用 bootstrap3),但我不知道如何更改它。 请任何人帮助我,因为我对此很陌生,谢谢。

平板电脑视图

手机查看

<!DOCTYPE html>
<html>

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href='https://fonts.googleapis.com/css?family=Allerta Stencil' rel='stylesheet'>
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css" integrity="sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt" crossorigin="anonymous"> @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr")

</head>

<body>
  <div class="navbar navbar-inverse navbar-fixed-top">
    <div class="container">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
      </div>
      <div class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li>@Html.ActionLink("Home", "Index", "Home")</li>
          <li>@Html.ActionLink("Bio", "About", "Home")</li>
          <li>@Html.ActionLink("Portfolio", "Portfolio", "Home")</li>
          <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
        </ul>
        <ul class="nav navbar-nav navbar-right">
          <li><a href="https://www.facebook.com" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
          <li><a href="https://www.linkedin.com" target="_blank"><i class="fab fa-linkedin-in"></i></a></li>
          <li><a href="https://www.instagram.com" target="_blank"><i class="fab fa-instagram"></i></a></li>
          <li><a href="mailto:" target="_blank"><i class="far fa-envelope"></i></a></li>
        </ul>
      </div>
    </div>
  </div>

这里是手机视图的基本 CSS:

@media all and (max-width: 767px) {

 .nav > li {             
     border-right: none;  
 }

 .navbar-nav > li > a {
     padding-top: 8px;
     padding-bottom: 15px;     
 }

.navbar-right > li > a {
    padding-top: 2px;
    padding-bottom: 4px;  
}

.nav {
    background-color: #008060;        
}

}

【问题讨论】:

  • 您的问题似乎与 ASP.NET 无关,因此我建议将@Html.ActionLink@Styles.Render 替换为适当的标签。你的 CSS 在哪里?请阅读how to ask a good question 并更新您的问题。

标签: html css asp.net-mvc twitter-bootstrap icons


【解决方案1】:

一个解决方法是将相同的 li 添加到 navbar-nav 并添加 visible-xs-*,

然后将 hidden-xs 添加到右侧导航栏上的那些。

类; hidden-xsvisible-xs-* 都来自引导框架。

<!DOCTYPE html>
<html>

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href='https://fonts.googleapis.com/css?family=Allerta Stencil' rel='stylesheet'>
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css" integrity="sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt" crossorigin="anonymous"> @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr")

</head>

<body>
  <div class="navbar navbar-inverse navbar-fixed-top">
    <div class="container">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
      </div>
      <div class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li class="visible-xs-*"><a href="https://www.facebook.com" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
          <li class="visible-xs-*"><a href="https://www.linkedin.com" target="_blank"><i class="fab fa-linkedin-in"></i></a></li>
          <li class="visible-xs-*"><a href="https://www.instagram.com" target="_blank"><i class="fab fa-instagram"></i></a></li>
          <li class="visible-xs-*"><a href="mailto:" target="_blank"><i class="far fa-envelope"></i></a></li>
          <li>@Html.ActionLink("Home", "Index", "Home")</li>
          <li>@Html.ActionLink("Bio", "About", "Home")</li>
          <li>@Html.ActionLink("Portfolio", "Portfolio", "Home")</li>
          <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
        </ul>
        <ul class="nav navbar-nav navbar-right">
          <li class="hidden-xs"><a href="https://www.facebook.com" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
          <li class="hidden-xs"><a href="https://www.linkedin.com" target="_blank"><i class="fab fa-linkedin-in"></i></a></li>
          <li class="hidden-xs"><a href="https://www.instagram.com" target="_blank"><i class="fab fa-instagram"></i></a></li>
          <li class="hidden-xs"><a href="mailto:" target="_blank"><i class="far fa-envelope"></i></a></li>
        </ul>
      </div>
    </div>
  </div>

【讨论】:

    【解决方案2】:

    如果没有看到您的 CSS,可能很难进行故障排除,但“右上角”不是可折叠导航栏的一部分,因此将社交图标嵌套在 navbar-collapse collapse 中不会获得您想要的结果。

      <div class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li>@Html.ActionLink("Home", "Index", "Home")</li>
          <li>@Html.ActionLink("Bio", "About", "Home")</li>
          <li>@Html.ActionLink("Portfolio", "Portfolio", "Home")</li>
          <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
        </ul>
        <ul class="nav navbar-nav navbar-right">
          <li><a href="https://www.facebook.com" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
          <li><a href="https://www.linkedin.com" target="_blank"><i class="fab fa-linkedin-in"></i></a></li>
          <li><a href="https://www.instagram.com" target="_blank"><i class="fab fa-instagram"></i></a></li>
          <li><a href="mailto:" target="_blank"><i class="far fa-envelope"></i></a></li>
        </ul>
      </div>
    

    在没有看到你的 CSS 的情况下,我不会做出基于假设的更改,但我会建议你为社交图标创建一个新的 div 并使用 flexbox 左右对齐。

    【讨论】:

    • 我在导航栏折叠外创建了一个新的导航标题(向右浮动),现在可以使用了,谢谢!
    • 考虑将 Flexbox 作为另一种选择。现在学习它,它将为您节省大量的布局调整时间。 :)
    猜你喜欢
    • 2015-09-03
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多