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

Problem z pozycjonowaniem tekstu w elemencie <code>.

Object Storage Arubacloud
0 głosów
127 wizyt
pytanie zadane 12 kwietnia 2019 w HTML i CSS przez Dru Nowicjusz (180 p.)

Witam! Mam problem z przesunięciem tekstu w elementach <code>. Nie wiem dlaczego tekst nie chce mi się przesunąć w lewą stronę.

<!DOCTYPE html>
<html lang="en">

	<head>
		<meta charset="UTF-8">
		<link href="https://fonts.googleapis.com/css?family=Inconsolata" rel="stylesheet">
		<style>
			
			body{
				font-family: 'Inconsolata', monospace;
				line-height: 1.5;
			}
			
			#navbar{
				position: fixed;
				top: 0;
				left: 0;
				width: 20%;
				height: 100%;
				background-color: #D3D3D3;
				overflow-y: auto;
				overflow-x: hidden;
			}
			
			#navbar li{
				padding: 5px;
				border: 1px solid;
				border-bottom-width: 0px;
				padding-left: 20px;
				width: 300px;
				position: relative;
				left: -43px;
			}
			
			#Documentation{
				text-align: center;
				padding-top: 27px;
				font-size: 30px;
			}
			
			.nav-link{
				list-style: none;
				text-decoration: none;
				color: black;
				font-size: 20px;
			}
			
			main{
				width: 80%;
				position: relative;
				left: 20%;
			}
			
			section{
				margin-left: 20px;
				margin-right: 20px;
			}
			
			header{
				font-size: 30px;
				padding-top: 20px;
				margin-bottom: 20px;
			}
			
			.main-section li{
				padding-left: 30px;
			}
			
			code{
				margin-left: 20px;
				margin-right: 40px;
				margin-top: 5px;
				margin-bottom: 10px;
				background-color: #D3D3D3;
				display: block;
				white-space: pre;
				line-height: 2;
				
			}
			
			@media (max-width: 1000px){
				body { 
					margin: 0; 
				}
				#navbar{
					position: relative;
					top: 0;
					width: 100%;
					height: 200px;
					overflow-y: auto;
					overflow-x: hidden;
					border: 0px  solid;
					border-bottom-width: 3px;
				}
				#navbar li{
					padding: 5px;
					border: 1px solid;
					border-bottom-width: 0px;
					padding-left: 20px;
					width: 110%;
					position: relative;
					left: -43px;
				}
				#Documentation{
					padding-top: 20px;
				}
				main{
					width: 100%;
					position: static;
					margin-left: 10px;
					margin-right: 10px;
				}
			}
			
		</style>
		
	</head>
	
	<body>
		<nav id="navbar">
			<header id="Documentation">Documentation</header>
			<ul>
				<a class="nav-link" href="#Introduction">
					<li>Introduction</li>
				</a>
				<a class="nav-link" href="#Subtitle1">
					<li>Subtitle1</li>
				</a>
				<a class="nav-link" href="#Subtitle2">
					<li>Subtitle2</li>
				</a>
				<a class="nav-link" href="#Subtitle3">
					<li>Subtitle3</li>
				</a>
				<a class="nav-link" href="#Subtitle4">
					<li>Subtitle4</li>
				</a>
			</ul>
			<div id="line"><div>
		</nav>
		<main id="main-doc">
			<section class="main-section" id="Introduction">
				<header>Introduction</header>
				<article>
				<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
				<p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt:</p>
				<li> Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.</li>
				<li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur.</li>
				</article>
			</section>
			<section class="main-section" id="Subtitle1">
				<header>Subtitle1</header>
				<article>
				<p>Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.</p>
				<li>Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. 
				<li>Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae.</li>
				<li>Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.</li>
				</article>
			</section>
			<section class="main-section" id="Subtitle2">
				<header>Subtitle2</header>
				<article>
				Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum:
				<code>
				function greetMe(yourName) {
				alert("Hello " + yourName);
				}
				greetMe("World");
				</code>
				Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.
				</article>
			</section>
			<section class="main-section" id="Subtitle3">
				<header>Subtitle3</header>
				 Officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates:
				 <p>Lorem lorem lorem lorem,
				 <code>
				 var x = 42.
				 </code>
				 Riciendis voluptatibus maiores alias consequatur. 
				 </p>
				 <p>
				 Lorem lorem lorem lorem,
				 <code>
				 x = 42.
				 </code>
				 Nam libero tempore, cum soluta nobis est eligendi optio cumque.
				 </p>
				 <p>
				 Lorem lorem lorem,
				 <code>
				 let y = 13.
				 </code>
				 Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae.
				 </p>
			</section>
			<section class="main-section" id="Subtitle4">
				<header>Subtitle4</header>
				<p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</p>
				<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</p>
				<code>
				if (true) {
				var x = 5;
				}
				console.log(x); // 5
				</code>
				<p>Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora.</p>
				<code>
				if (true) {
				let y = 5;
				}
				console.log(y);
				// ReferenceError: y is not defined
				</code>
			</section>
		</main>
	</body>

</html>

1 odpowiedź

+1 głos
odpowiedź 20 kwietnia 2019 przez spongebob_fan123 Nowicjusz (160 p.)

Jest kilka rozwiązań. Jednym jest usunięcie wszystich tabów ze znaczników <code>, ponieważ są one renderwane i traktowane jako normalny tekst. Sprawia to jednak, że kod wygłada brzydko i dziwnie. Ja bym zrobił tak:

code {
                margin-left: 20px;
                margin-right: 40px;
                margin-top: 5px;
                margin-bottom: 10px;
                background-color: #D3D3D3;
                display: block;
                white-space: pre-line;
                padding-bottom: 2em;
                padding-left: 20px;
                line-height: 2; 
}

white-space: pre-line; usuwa niepotrzebne spacje na początku i końcu każdej lini. Sprawia to jednak, że zostaje usunięty dolny odstęp. padding-bottom: 2em; służy temu by dolny odstęp zrównał się z górnym. Właściwością padding-left możesz regulować odstęp tekstu od lewej strony. Na pewno nie jest to najlepsze rozwiązanie, jednak myślę, że jest ono wystarczające dla początkującej osoby.

Podobne pytania

0 głosów
1 odpowiedź 125 wizyt
0 głosów
3 odpowiedzi 492 wizyt
pytanie zadane 28 września 2016 w HTML i CSS przez Vromix Początkujący (410 p.)
0 głosów
1 odpowiedź 117 wizyt
pytanie zadane 16 czerwca 2015 w PHP przez groszek Początkujący (270 p.)

92,555 zapytań

141,404 odpowiedzi

319,557 komentarzy

61,940 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!

...