• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[Bootstrap] Problem z marginesami i wyświetlaniem

Object Storage Arubacloud
–1 głos
862 wizyt
pytanie zadane 5 listopada 2016 w HTML i CSS przez matteo.web Użytkownik (700 p.)
edycja 5 listopada 2016 przez matteo.web

Piszę prosty system logowania i rejestracji. Do interfejsu używam BootstrapCDN (https://www.bootstrapcdn.com/). Jak wyrównać formularz logowania do lewej (reszty strony). Wcześniej uciekał na prawo, poza marginesy górnej części strony, ale usunąłem w widoku formularza linijkę:

<div class="row">

Po usunięciu, wyrównało do prawej, ale z lewej jest za duże wcięcie. Jak to wyrównać do reszty strony, razem z komunikatem o błędzie? Proszę o sprawdzenie poprawności css/html.

Ekran logowania teraz wygląda tak:

To kod źródłowy:


<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Title</title>
    
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="">
    <meta name="author" content="">
    
    <!-- Bootstrap core CSS -->
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
    
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    
</head>
<body>
<style>
   body {
	  padding-top: 20px;
	  padding-bottom: 20px;
   }

   .navbar {
	  margin-bottom: 20px;
   }
</style>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
   
<div class="container">

  <!-- Static navbar -->
      <nav class="navbar navbar-default">
        <div class="container-fluid">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="http://localhost/hce/">Title</a>
          </div>
          <div id="navbar" class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li class="active"><a href="#">Panel</a></li>
              <li><a href="#">About</a></li>
              <li><a href="#">Contact</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
                <ul class="dropdown-menu" role="menu">
                  <li><a href="#">Action</a></li>
                  <li><a href="#">Another action</a></li>
                  <li><a href="#">Something else here</a></li>
                  <li class="divider"></li>
                  <li class="dropdown-header">Nav header</li>
                  <li><a href="#">Separated link</a></li>
                  <li><a href="#">One more separated link</a></li>
                </ul>
              </li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
              <li class="active"><a href="./">Zaloguj się<span class="sr-only">(current)</span></a></li>
              <li><a href="../navbar-static-top/">Rejestracja</a></li>
              <li><a href="../navbar-fixed-top/">Fixed top</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div><!--/.container-fluid -->
      </nav>
      
      <div class="jumbotron">
	
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris vitae metus elit.
            Integer dictum eget erat id volutpat. Phasellus dapibus placerat aliquam. Pellentesque vel lacinia nisl.</p>

      </div>
  
  <div class="alert alert-danger alert-dismissible" role="alert">
  <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  <strong>Uwaga!</strong> Proszę się zalogować, aby uzyskać dostęp.
    </div>

<!-- Formularz Logowania -->

<div class="container">
						<div class="col-md-12">
			<div class="page-header">
				<h1>Login</h1>
			</div>
			<form action="http://localhost/hce/user/login" method="post" accept-charset="utf-8">
				<div class="form-group">
					<label for="username">Username</label>
					<input type="text" class="form-control" id="username" name="username" placeholder="Your username">
				</div>
				<div class="form-group">
					<label for="password">Password</label>
					<input type="password" class="form-control" id="password" name="password" placeholder="Your password">
				</div>
				<div class="form-group">
					<input type="submit" class="btn btn-default" value="Login">
				</div>
			</form>
		</div>
	


<footer>
    <div class="container">
        <p class="footer"><strong>Lorem Ipsum</strong> | Alpha <strong>0.1</strong> | Page rendered in <strong>0.1210</strong> seconds | 
            Engine <strong>3.1.2</strong></p>
    </div>

</footer>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</body>
</html>
komentarz 5 listopada 2016 przez Czort Nałogowiec (32,500 p.)
A co ma do tego Codeigniter?
komentarz 5 listopada 2016 przez matteo.web Użytkownik (700 p.)
W sumie to nic. Poprawiłem tytuł.
komentarz 5 listopada 2016 przez matteo.web Użytkownik (700 p.)
PS: Tak mnie zastanawia, dlaczego pytanie dostało dwa minusy? Co w nim jest złego? Gdyby chociaż ktoś podał powód, żebym wiedział na przyszłość...
komentarz 5 listopada 2016 przez manjaro Nałogowiec (37,390 p.)

PS: Tak mnie zastanawia, dlaczego pytanie dostało dwa minusy? Co w nim jest złego? Gdyby chociaż ktoś podał powód, żebym wiedział na przyszłość...

Nie przejmuj się, gimbaza tak ma...

2 odpowiedzi

+1 głos
odpowiedź 5 listopada 2016 przez jaca121212 Nałogowiec (40,760 p.)
 
Najlepsza
<body>
<style>
   body {
      padding-top: 20px;
      padding-bottom: 20px;
   }
 
   .navbar {
      margin-bottom: 20px;
   }
</style>

Dlaczego style są wstawione w tagu "body" a nie w "head" ?

Dlaczego nie używasz osobnego pliku CSS do ostylowania tagów HTML ?

Dlaczego najpierw nie nauczysz się podstaw HTML i CSS ? (zakładając, że nie umiesz tych podstaw).

I tak na koniec taka rada jeśli testujesz i pracujesz na  swoim PC czy laptopie  a nie na serwerze warto podawać pełny adres do danego  pliku z sieci 

//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js

tak

http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js

Jeśli chodzi o obrazki które masz na swoim  dysku to wtedy nie podajesz ścieżki bezwzględnej a względną (tutaj opis ścieżek).

Tutaj jak napisał Czort .col-md-12 mają padding.

Przykład z wyzerowanym paddingiem dla class-y col-md-12.

http://codepen.io/jaca121212/pen/LbEPXJ

komentarz 5 listopada 2016 przez matteo.web Użytkownik (700 p.)
Dziękuję za wnikliwą odpowiedź. HTML i CSS uczę się dopiero. Równocześnie też PHP. Jednak to za dużo chyba jak na raz. Czyli wystarczył tylko wyzerowany padding?

Ostatnie pytanie. <div class="row"> - był zbędny? bo przecież wszystko mam w jednej kolumnie.
komentarz 5 listopada 2016 przez jaca121212 Nałogowiec (40,760 p.)
Nie używam framework-ów gdyż:

- wolę tworzyć własne szkielety strony,

-przyswajanie dotychczasowej wiedzy i nauka nowej,

-prosty i czytelny kod,

A tak na marginesie to warto wstawiać komentarze za co dana sekcja odpowiada.

/* Górna nawigacja strony */

Kod  odpowiadający za  górna nawigację strony.
komentarz 5 listopada 2016 przez matteo.web Użytkownik (700 p.)

Poprawiłem błędy i zastosowałem się do Twoich wskazówek.

Style w sekcji HEAD, i style w osobnym pliku i pełny adres do pliku w sieci oraz padding. Teraz kod wygląda czytelniej.


<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Title</title>
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="">
    <meta name="author" content="">
    <!-- Bootstrap core CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
    <!-- Public View CSS -->
    <link rel="stylesheet" href="../assets/css/public_view.css" type="text/css"/>
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
</head>
<!-- Header -->
<body>
<!-- Górna nawigacja strony -->   
<div class="container">
  <!-- Static navbar -->
      <nav class="navbar navbar-default">
        <div class="container-fluid">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="http://localhost/hce/">Title</a>
          </div>
          <div id="navbar" class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li class="active"><a href="#">Panel</a></li>
              <li><a href="#">About</a></li>
              <li><a href="#">Contact</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
                <ul class="dropdown-menu" role="menu">
                  <li><a href="#">Action</a></li>
                  <li><a href="#">Another action</a></li>
                  <li><a href="#">Something else here</a></li>
                  <li class="divider"></li>
                  <li class="dropdown-header">Nav header</li>
                  <li><a href="#">Separated link</a></li>
                  <li><a href="#">One more separated link</a></li>
                </ul>
              </li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
              <li class="active"><a href="./">Zaloguj się<span class="sr-only">(current)</span></a></li>
              <li><a href="../navbar-static-top/">Rejestracja</a></li>
              <li><a href="../navbar-fixed-top/">Fixed top</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div><!--/.container-fluid -->
      </nav>        
<!-- Panel informacyjny -->
    <div class="jumbotron">
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris vitae metus elit.
        Integer dictum eget erat id volutpat. Phasellus dapibus placerat aliquam. Pellentesque vel lacinia nisl.</p>
    </div>
<!-- Alert o logowaniu -->
    <div class="alert alert-info alert-dismissible" role="alert">
        <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        Proszę się zalogować, aby uzyskać dostęp.
    </div>
<!-- Formularz Logowania --><div class="container">
	    <h1>Login in</h1>
    <form action="http://localhost/hce/user/login" method="post" accept-charset="utf-8">
<label for="username">Username:</label><br /><input type="text" name="username" value=""  />
<br /><label for="password">Password:</label><br /><input type="password" name="password" value=""  />
<br /><input type="checkbox" name="remember" value="1"  />
 Remember me<br /><input type="submit" name="submit" value="Log In"  />
</form></div>
<!-- Footer -->    <footer>
        <p class="footer"><strong>Lorem Ipsum</strong> | Alpha <strong>0.1</strong> | Page rendered in <strong>0.1030</strong> seconds | 
            Engine <strong>3.1.2</strong></p>
    </footer>
</div>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</body>
</html>

 

+1 głos
odpowiedź 5 listopada 2016 przez Czort Nałogowiec (32,500 p.)
.container i .col-md-12 mają padding dlatego nie są wyrównane do lewej
komentarz 5 listopada 2016 przez matteo.web Użytkownik (700 p.)

No tak... Dziękuję.

.container potrzebuję dla pokazanego efektu, nie chcę rozciągać strony na całą szerokość. Jak usunąłem .col-md-12 to formularz wysunął się z prawej poza resztę. Dopiero jak usunąłem <div class="row"> i osadziłem całość (header, formularz, footer) w .container to wszystko się ładnie wyrównało. Nie jestem jednak pewny czy to co zrobiłem jest dobre, niby działa, ale czy samo rozwiązanie jest poprawne? Chodzi mi o uczenie się dobrych praktyk.

Także proszę jeszcze raz o przejrzenie kodu.


<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Title</title>
    
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="">
    <meta name="author" content="">
    
    <!-- Bootstrap core CSS -->
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
    
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    
</head>
<body>
<style>
   body {
	  padding-top: 20px;
	  padding-bottom: 20px;
   }

   .navbar {
	  margin-bottom: 20px;
   }
</style>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
   
<div class="container">

  <!-- Static navbar -->
      <nav class="navbar navbar-default">
        <div class="container-fluid">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="http://localhost/hce/">Title</a>
          </div>
          <div id="navbar" class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li class="active"><a href="#">Panel</a></li>
              <li><a href="#">About</a></li>
              <li><a href="#">Contact</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
                <ul class="dropdown-menu" role="menu">
                  <li><a href="#">Action</a></li>
                  <li><a href="#">Another action</a></li>
                  <li><a href="#">Something else here</a></li>
                  <li class="divider"></li>
                  <li class="dropdown-header">Nav header</li>
                  <li><a href="#">Separated link</a></li>
                  <li><a href="#">One more separated link</a></li>
                </ul>
              </li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
              <li class="active"><a href="./">Zaloguj się<span class="sr-only">(current)</span></a></li>
              <li><a href="../navbar-static-top/">Rejestracja</a></li>
              <li><a href="../navbar-fixed-top/">Fixed top</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div><!--/.container-fluid -->
      </nav>
      
      <div class="jumbotron">
	
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris vitae metus elit.
            Integer dictum eget erat id volutpat. Phasellus dapibus placerat aliquam. Pellentesque vel lacinia nisl.</p>

      </div>
  
  <div class="alert alert-danger alert-dismissible" role="alert">
  <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  <strong>Uwaga!</strong> Proszę się zalogować, aby uzyskać dostęp.
    </div>

<!-- Formularz Logowania -->


	
						
			<div class="page-header">
				<h1>Login</h1>
			</div>
			<form action="http://localhost/hce/user/login" method="post" accept-charset="utf-8">
				<div class="form-group">
					<label for="username">Username</label>
					<input type="text" class="form-control" id="username" name="username" placeholder="Your username">
				</div>
				<div class="form-group">
					<label for="password">Password</label>
					<input type="password" class="form-control" id="password" name="password" placeholder="Your password">
				</div>
				<div class="form-group">
					<input type="submit" class="btn btn-default" value="Login">
				</div>
			</form>
		
	


<footer>
    
        <p class="footer"><strong>Lorem Ipsum</strong> | Alpha <strong>0.1</strong> | Page rendered in <strong>0.0920</strong> seconds | 
            Engine <strong>3.1.2</strong></p>
    </div>

</footer>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</body>
</html>

A to obecny efekt:

Podobne pytania

0 głosów
3 odpowiedzi 1,806 wizyt
pytanie zadane 15 czerwca 2016 w HTML i CSS przez tetriss Obywatel (1,710 p.)
0 głosów
2 odpowiedzi 143 wizyt
pytanie zadane 9 września 2016 w HTML i CSS przez thedaw Obywatel (1,810 p.)
0 głosów
1 odpowiedź 174 wizyt
pytanie zadane 8 lipca 2016 w HTML i CSS przez MaciekM Użytkownik (990 p.)

92,581 zapytań

141,433 odpowiedzi

319,666 komentarzy

61,966 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...