Strange empty hyperlink. How do I get rid of it? - html

I tried to make a list of hyperlinks for the "Follow" section of a footer I'm trying to create right at the end of my code, which should act as a button and I managed to do that. However, for some reason, there is some "extra-button" next to the last two hyperlinks and I can't seem to figure out why. I've already searched for a solution on the internet, but I couldn't find anything related to my problem. I would be really grateful if someone could take a look at my code real quick and tell me if they can figure out what's wrong.
(I apologize that the majority of the website is in German, but I tried my best to make most of it in English.)
body {
font-family: Arial, Helvetica, sans-serif;
}
h1 {
text-align: center;
font-style: italic;
}
.picture {
position: absolute;
left: 1150px;
top: 200px;
}
h2 {
text-decoration: underline;
}
.maintext {
margin-left: 100px;
}
h3 {
font-style: italic;
}
.nav {
background-color: red;
color: white;
padding: 14px 16px;
margin-right: 10px;
}
.nav_ul {
color: white;
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
background-color: black;
}
li {
float: left;
}
.navlist a {
display: block;
color: grey;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
.navlist a:hover {
background-color: #434343;
color: white;
}
.footer {
color: grey;
margin: 0;
padding: 0;
overflow: hidden;
background-color: black;
padding-left: 300px;
}
.ftheads {
color: white;
font-weight: bold;
}
.ftcontent {
float: left;
display: block;
color: grey;
text-align: center;
padding: 40px 50px;
text-decoration: none;
}
.ftlist {
float: none;
padding: 5px;
text-align: left;
}
.ftlisthead {
color: white;
list-style-type: none;
font-style: italic;
float: none;
padding: 15px;
text-align: left;
margin-left: -25px;
margin-top: 5px;
}
.ftobject {
margin-top: 70px;
}
.ftobject a {
color: grey;
text-decoration: none;
background-color: black;
padding: 10px;
}
.ftobject a:hover {
background-color: #434343;
color: white;
}
.ftlist_follow {
float: none;
padding: 20px;
text-align: left;
}
.ftlist_follow a {
color: grey;
text-decoration: none;
background-color: black;
padding: 14px 16px;
}
.ftlist_follow a:hover {
background-color: #434343;
color: white;
}
<header>
<h1>Mein Sommer 2018</h1>
</header>
<div class="picture">
<img src="Wallpaper_komprimiert.jpg" alt="Landschaft" width=200px height=112px>
</div>
<hr>
<nav>
<div>
<ul class="nav_ul" id="navigationbar">
<li class="nav">Navigation</li>
<li class="navlist"> 1. Juli </li>
<li class="navlist"> 1. Woche </li>
<li class="navlist"> 2. Woche </li>
<li class="navlist"> 3. Woche </li>
<li class="navlist"> 4. Woche </li>
<li class="navlist"> 1. August </li>
<li class="navlist"> 5. Woche </li>
<li class="navlist"> 6. Woche </li>
<li class="navlist"> 7. Woche </li>
<li class="navlist"> 8. Woche </li>
</ul>
</div>
</nav>
<hr>
<div class="maintext">
<header>
<h2 id="Ziel1">1. Juli</h2>
</header>
<br>
<section>
<h3 id="Ziel2"> 1. Woche </h3>
</section>
<article>
<h4>In der ersten Ferienwoche habe ich eine Zeichnung fertiggestellt, an der ich schon eine Weile gearbeitet habe. <br> Die meiste Zeit habe ich aber mit meiner Schwester und unseren Freunden verbracht.
</h4>
</article>
<section>
<h3 id="Ziel3">2. Woche</h3>
</section>
<article>
<h4>In der zweiten Ferienwoche begann es allmählich heißer zu werden. Deshalb blieben meine Schwester und ich die meiste Zeit Zuhause. Wenn Freunde kamen, spielten wir normalerweise Videospiele.
</h4>
</article>
<section>
<h3 id="Ziel4">3. Woche</h3>
</section>
<article>
<h4>Die dritte Woche war aufgrund der Hitze relativ wenig los. Fast jeden Tag verbrachten meine Schwester, ihr Freund und ich stundenlang bei einem Freund. Glücklicherweise hatte dieser eine Klimaanlage, was vorteilhaft war.
</h4>
</article>
<section>
<h3 id="Ziel5">4. Woche</h3>
</section>
<article>
<h4>In der vierten Woche übernachteten wir zwei mal bei unserem Freund. In der ersten Nacht schauten wir während des Verlaufes der Nacht drei Filme und blieben deshalb selbstverständlich die ganze Nacht wach. In der zweiten Nacht haben wir uns wieder
zwei Filme angesehen, gingen aber diesmal um etwa 4:00 schlafen.
</h4>
</article>
<br>
<header>
<h2 id="Ziel6">1. August</h2>
</header>
<br>
<section>
<h3 id="Ziel7">5. Woche</h3>
</section>
<article>
<h4>In der fünften Woche ging einer unserer Freunde für den Rest der Ferien arebiten um ein Praktikum am Flughafen Wien zu machen. Folglich war auch noch weniger los als sonst. Der Freund meiner Schwester kam zwar noch immer fast jeden Tag, jedoch relativ
spät.
</h4>
</article>
<section>
<h3 id="Ziel8">6. Woche</h3>
</section>
<article>
<h4>Nun wurde es glücklicherweise kühler und ich schaffte es mich wieder besser zu beschäftigen als mit dem Handy oder Videospielen. Ich traf mich seit längerer Zeit wieder mit einem Freund im Parkbad.
</h4>
</article>
<section>
<h3 id="Ziel9">7. Woche</h3>
</section>
<article>
<h4>In der siebten Ferienwoche unternahmen meine Familie und ich einen Ausflug zu meiner Tante und ihrem Lebensgefährten, die wir seit mehreren Jahren nicht gesehen haben. Wir hatten gehofft, dass wir meine Cousine auch sehen würden, aber diese war leider
arbeiten.
</h4>
</article>
<section>
<h3 id="Ziel10">8. Woche</h3>
</section>
<article>
<h4>In der letzen Woche versuchten meine Schwester und ich unser bestes um die letzten paar Ferientage noch so gut wie möglich auszunutzen. Wir verbrachten abermals einen Tag bei meiner Tante und haben diesmal auch unsere Cousine wiedergesehen. Unser
Freund hat sich für die letzten zwei Tage seines Praktikums Urlaub genommen und konnte folglich die restlichen Tage mit uns Zeit verbringen.
</h4>
</article>
</div>
<footer class="footer">
<div class="ftcontent">
<header class="ftheads"> Navigate </header>
<section class="ftobject">
- Navigation-Bar
</section>
</div>
<div class="ftcontent">
<header class="ftheads"> Contact </header>
<section>
<ul>
<header class="ftlisthead">E-mail:</header>
<li class="ftlist"> nayonyx#gmail.com </li>
<li class="ftlist"> 8085#htl.rennweg.at </li>
<header class="ftlisthead"> Telephone: </header>
<li class="ftlist"> +436606611766 </li>
</ul>
</section>
</div>
<div class="ftcontent">
<header class="ftheads"> Follow </header>
<section>
<ul>
<li class="ftlist_follow"> <a href="#Facebook"> Facebook </li>
<li class="ftlist_follow"> <a href="#Instagram"> Instagram </li>
<li class="ftlist_follow"> <a href="#Twitter"> Twitter </li>
</ul>
</section>
</div>
</footer>

You forgot to close your HTML <a> tag using </a>, like this:
<ul>
<li class="ftlist_follow"> Facebook </li>
<li class="ftlist_follow"> Instagram </li>
<li class="ftlist_follow"> Twitter </li>
</ul>
That should fix your issue.

Just remove the padding here and buttons will disappear.
.ftlist_follow a {
color: grey;
text-decoration: none;
background-color: black;
padding: 14px 16px;
}

Related

Vertically center/align image div with adjacent text div in css grid

Probably missing sth here but I've tried to align this for two days now and browsed through + tried pretty much everything I could find on stackoverlow etc. about it.
I have a CSS grid on a website that contains (per grid item) a text div and an img div. I'm trying to keep the img vertically centered relative to the text.
#supports (display: grid) {
.grid {
display: grid;
grid-template-columns: 1fr;
text-align: center;
grid-gap: 20px;
margin: 20px;
}
.grid__item {
display: inline-block;
flex-direction: column;
justify-content: center;
background-color: var(--primary-color);
width: auto;
min-height: auto;
padding: 15px;
}
}
.grid__item .grid__item-text-l {
display: block;
float: left;
width: 55%;
}
.grid__item .grid__item-img-r {
display: block;
width: 40%;
height: 100%;
float: right;
}
.grid__item .grid__item-text-r {
display: block;
float: right;
width: 55%;
}
.grid__item .grid__item-img-l {
display: block;
width: 40%;
height: 100%;
float: left;
}
img.dummy-img {
height: 300px;
max-width: 350px;
}
<div class="main-heading-large">Hundetraining vom Feinsten</div>
<div class="grid">
<div class="grid__item">
<div class="grid__item-text-l">
<h2>Ein Korb für alle Fälle</h2>
<p>
„Der tut nix!“, hallte es in den frühen Abendstunden an den malerischen Ufern des Starnberger Sees aus der Ferne. Darauf Stille. Im nächsten Augenblick kam „Der“ hochmotiviert und mit Karacho durch die Kurve des Parkweges geschossen. Mit lautem Getöse
krachte der Foxterrier-Rüde in den angeleinten Hütehund-Neuling, um dem Zottelbär zu zeigen, wo in „seinem“ Park der Hammer hängt. Ergebnis: 1. „Der“ ist nicht erstickt. 2. „Der“ und Halter müssen reden. 3. Für den Diskurs konnte ein Maulkorb
als Moderator gewonnen werden. Ich zeige Ihnen, welches Modell für Ihren Hund am besten geeignet ist.
</p>
Mehr erfahren
</div>
<div class="grid__item-img-r">
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Australian Shepherd mit Osterkorb.">
</div>
</div>
<div class="grid__item">
<div class="grid__item-text-r">
<h2>Born to lead?</h2>
<p>
Feldmanns Leben ist eines der härtesten. Soviel ist sicher. Sein täglicher Wahnsinn beginnt morgens mit einem hochmotivierten Kontrollgang durchs Viertel. Dabei hinterlässt er an zentralen Infotheken Kurzanweisungen für ein gedeihliches Miteinander in
seinem Revier. Falls nötig, führt er auch Einzelgespräche. Die liebt er besonders. Wieder zu Hause angekommen, reicht ihm seine Küchenhilfe Frühstück. Es folgt ein kurzes Verdauungslauern, denn in herrlicher Unregelmäßigkeit ist im weiteren Tagesablauf
mit lästigen Störvorfällen zu rechnen. Dann ist Feldmanns strategische Führung gefragt. Das Läuten der Klingel ruft beispielsweise seine Türsteherqualitäten auf den Plan. Tür auf, und es folgt ein distanzloser Bodycheck des Besuchs sowie eine
grimmige Sitzplatzblockade seiner Sofalandschaft im Wohnzimmer. Da gibt es einfach Grenzen. Seine. Außerdem hat die Küche Gartenblick. Mit dem Einstellen der Bewegungsreize in seinem Umfeld fährt der Master of Desaster runter. Bis zum Ende der
Besuchszeit. Dann beginnt seine nächste Schicht.
</p>
Mehr erfahren
</div>
<div class="grid__item-img-l">
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Ein Rottweiler im Anzug.">
</div>
</div>
<div class="grid__item">
<div class="grid__item-text-l">
<h2>Houston, wir haben ein Problem!</h2>
<p>
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient einer Seite. Dieser Text dient zum füllen einer Seite. Dieser
Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
</p>
Mehr erfahren
</div>
<div class="grid__item-img-r">
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Ein aggressiver Hund.">
</div>
</div>
<div class="grid__item">
<div class="grid__item-text-r">
<h2>Sit Happens</h2>
<p>
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient einer Seite. Dieser Text dient zum füllen einer Seite. Dieser
Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
</p>
Mehr erfahren
</div>
<div class="grid__item-img-l">
<img class="dummy-img" src="./img/dummy-sit.png" alt="Ein Hund sitzt neben Beinen in zerfetzten Hosen.">
</div>
</div>
<div class="grid__item">
<div class="grid__item-text-l">
<h2>Welches Schweinerl hätten S' denn gern?</h2>
<p>
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient einer Seite. Dieser Text dient zum füllen einer Seite. Dieser
Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
</p>
Mehr erfahren
</div>
<div class="grid__item_img-r">
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Eine Bande verschiedener Hunde.">
</div>
</div>
Thanks for your help and apologies if you've solved this issue before.
The key bits you are missing:
.grid__item {display: flex;}
.grid__item {align-items: center;}
.text-left {flex-direction: row;}
.text-right {flex-direction: row-reverse;}
#supports (display: grid) {
.grid {
display: grid;
grid-template-columns: 1fr;
text-align: center;
grid-gap: 20px;
margin: 20px;
}
.grid__item {
display: flex;
align-items: center;
background-color: var(--primary-color);
width: auto;
min-height: auto;
padding: 15px;
}
}
.text-left {
flex-direction: row;
}
.text-right {
flex-direction: row-reverse;
}
.text-left>*:first-child, .text-right>*:first-child {
width: 55%;
}
.text-left>*:last-child, .text-right>*:last-child {
width: 45%;
}
img.dummy-img {
height: 300px;
max-width: 350px;
}
<div class="main-heading-large">Hundetraining vom Feinsten</div>
<div class="grid">
<div class="grid__item text-left">
<div>
<h2>Ein Korb für alle Fälle</h2>
<p>
„Der tut nix!“, hallte es in den frühen Abendstunden an den malerischen Ufern des Starnberger Sees aus der Ferne. Darauf Stille. Im nächsten Augenblick kam „Der“ hochmotiviert und mit Karacho durch die Kurve des Parkweges geschossen. Mit lautem Getöse
krachte der Foxterrier-Rüde in den angeleinten Hütehund-Neuling, um dem Zottelbär zu zeigen, wo in „seinem“ Park der Hammer hängt. Ergebnis: 1. „Der“ ist nicht erstickt. 2. „Der“ und Halter müssen reden. 3. Für den Diskurs konnte ein Maulkorb
als Moderator gewonnen werden. Ich zeige Ihnen, welches Modell für Ihren Hund am besten geeignet ist.
</p>
Mehr erfahren
</div>
<div>
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Australian Shepherd mit Osterkorb.">
</div>
</div>
<div class="grid__item text-right">
<div>
<h2>Born to lead?</h2>
<p>
Feldmanns Leben ist eines der härtesten. Soviel ist sicher. Sein täglicher Wahnsinn beginnt morgens mit einem hochmotivierten Kontrollgang durchs Viertel. Dabei hinterlässt er an zentralen Infotheken Kurzanweisungen für ein gedeihliches Miteinander in
seinem Revier. Falls nötig, führt er auch Einzelgespräche. Die liebt er besonders. Wieder zu Hause angekommen, reicht ihm seine Küchenhilfe Frühstück. Es folgt ein kurzes Verdauungslauern, denn in herrlicher Unregelmäßigkeit ist im weiteren Tagesablauf
mit lästigen Störvorfällen zu rechnen. Dann ist Feldmanns strategische Führung gefragt. Das Läuten der Klingel ruft beispielsweise seine Türsteherqualitäten auf den Plan. Tür auf, und es folgt ein distanzloser Bodycheck des Besuchs sowie eine
grimmige Sitzplatzblockade seiner Sofalandschaft im Wohnzimmer. Da gibt es einfach Grenzen. Seine. Außerdem hat die Küche Gartenblick. Mit dem Einstellen der Bewegungsreize in seinem Umfeld fährt der Master of Desaster runter. Bis zum Ende der
Besuchszeit. Dann beginnt seine nächste Schicht.
</p>
Mehr erfahren
</div>
<div>
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Ein Rottweiler im Anzug.">
</div>
</div>
<div class="grid__item text-left">
<div>
<h2>Houston, wir haben ein Problem!</h2>
<p>
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient einer Seite. Dieser Text dient zum füllen einer Seite. Dieser
Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
</p>
Mehr erfahren
</div>
<div>
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Ein aggressiver Hund.">
</div>
</div>
<div class="grid__item text-right">
<div>
<h2>Sit Happens</h2>
<p>
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient einer Seite. Dieser Text dient zum füllen einer Seite. Dieser
Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
</p>
Mehr erfahren
</div>
<div>
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Ein Hund sitzt neben Beinen in zerfetzten Hosen.">
</div>
</div>
<div class="grid__item text-left">
<div>
<h2>Welches Schweinerl hätten S' denn gern?</h2>
<p>
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite. Dieser Text dient einer Seite. Dieser Text dient zum füllen einer Seite. Dieser
Text dient zum füllen einer Seite. Dieser Text dient zum füllen einer Seite.
</p>
Mehr erfahren
</div>
<div>
<img class="dummy-img" src="https://via.placeholder.com/400x300" alt="Eine Bande verschiedener Hunde.">
</div>
</div>

Left side navigation bar centered and close to page content

I got a side navigation bar that is located on the left side of the page. I would like the position of this to be just left of the content. Example of what I want is in the pictures below:
Current state:
What I would like is the menu to be like this:
How can I do this? Code is here: https://codepen.io/johsflesj/pen/QWQERRj
<nav>
<div class="container">
<ul>
<li class="home active">Home</li>
<li class="about">About</li>
<li class="contact">Contact</li>
<li class="footer">Footer</li>
<li class="yoyo">Yoyo</li>
</ul>
</div>
</nav>
<div class="kropp">
<section id="home">
<h1>Home</h1>
<p>Dette er testskrift som er veldig lang som jeg tester om hvor langt ut til siden den går for det er veldig greit å se hvor langt ut til siden innholdet her faktisk kommer</p>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
</section>
<section id="about">
<h1>About</h1>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
</section>
<section id="contact">
<h1>Contact</h1>
</section>
<section id="footer">
<h1>Footer</h1>
</section>
<section id="yoyo">
<h1>Yoyo</h1>
</section>
</div>
You can add margin-left:30% to the "container" div, so that it will move closer to "kropp" div, and you have to add media queries if you need this page to be responsive.
Without any margin settings
<div class="box">
<div class="nav_out">
<nav>
<div class="container">
<ul>
<li class="home active">Home</li>
<li class="about">About</li>
<li class="contact">Contact</li>
<li class="footer">Footer</li>
<li class="yoyo">Yoyo</li>
</ul>
</div>
</nav>
</div>
<div class="kropp">
<section id="home">
<h1>Home</h1>
<p>Dette er testskrift som er veldig lang som jeg tester om hvor langt ut til siden den går for det er veldig greit å se hvor langt ut til siden innholdet her faktisk kommer</p>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
</section>
<section id="about">
<h1>About</h1>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
<p>Dette er testskrift som er veldig lang</p>
</section>
<section id="contact">
<h1>Contact</h1>
</section>
<section id="footer">
<h1>Footer</h1>
</section>
<section id="yoyo">
<h1>Yoyo</h1>
</section>
</div>
</div>
<style>
#import url("https://fonts.googleapis.com/css2?family=Roboto+Mono&display=swap");
html {
font-family: "Roboto Mono";
font-size: 16px;
scroll-behavior: smooth;
}
.kropp {
max-width: 0px;
margin: auto;
padding-left: 40px;
height: 100vh;
max-width: 80%;
}
#home {
background-color: white;
}
#about {
background-color: light-grey;
}
#footer {
background-color: white;
}
#yoyo {
background-color: white;
}
.box {
display: flex;
justify-content: center;
max-width: 80%;
margin: 0 auto;
}
.box .nav_out {
max-width: 20%;
float: left;
}
nav {
position: sticky;
top: 0;
background-color: white;
width: 0px;
}
nav .container {
height: 100%;
width: 160px;
position: fixed;
z-index: 1;
top: 0;
overflow-x: hidden;
padding-top: 20px;
margin-left:0%
}
nav .container ul li {
display: inline-block;
}
nav .container ul li a {
display: inline-block;
text-decoration: none;
padding: 10px 20px;
color: black;
}
nav .container ul li.active {
background-color: #E9E9E9;
transition: 0.3s ease background-color;
}
nav .container ul li.active a {
color: rgb(255, 255, 255);
}
</style>
I used flexbox to get the menu to be located at the right position, regardless of browser size.

Why is the text shifted to the top left when I want to make it larger with <4>, for example?

I've tried a lot now and really don't know what to do next. No matter what I put behind it, it shifts to the top left. I hope you can help me. The text is just an example.
I want to make the sentences that are preceded by an exclamation mark bigger.
<div class="megadiv">
<div class="LONGDIV">
!Allgemeine Geschäftsbedingungen ("Bedingungen")<br><br>
Bitte lesen Sie diese Allgemeinen Geschäftsbedingungen ("Bedingungen") sorgfältig durch, bevor Sie die Website [] (den "Dienst") nutzen.
Ihr Zugang zu und Ihre Nutzung des Dienstes setzt voraus, dass Sie diese Bedingungen akzeptieren und einhalten. Diese Bedingungen gelten für alle Besucher, Benutzer und andere, die auf den Dienst zugreifen oder ihn nutzen.
Indem Sie auf den Dienst zugreifen oder ihn nutzen, erklären Sie sich mit diesen Bedingungen einverstanden. Wenn Sie mit irgendeinem Teil der Bedingungen nicht einverstanden sind, dürfen Sie den Dienst nicht nutzen. Die Vereinbarung über die Allgemeinen Geschäftsbedingungen für [] wurde mit Hilfe von "TermsFeed.com" erstellt.<br><br>
!Links zu anderen Websites<br><br>
Unser Dienst kann Links zu Websites oder Diensten Dritter enthalten, die nicht im Besitz oder unter der Kontrolle von [] sind.
[] hat keine Kontrolle über und übernimmt keine Verantwortung für den Inhalt, die Datenschutzrichtlinien oder die Praktiken von Websites oder Diensten Dritter. Sie erkennen ferner an und erklären sich damit einverstanden, dass [] weder direkt noch indirekt für Schäden oder Verluste verantwortlich oder haftbar ist, die durch oder in Verbindung mit der Nutzung von oder dem Vertrauen auf solche Inhalte, Waren oder Dienste, die auf oder über solche Websites oder Dienste verfügbar sind, verursacht werden oder angeblich verursacht werden.
Wir raten Ihnen dringend, die Geschäftsbedingungen und Datenschutzrichtlinien aller Websites oder Dienste Dritter, die Sie besuchen, zu lesen.<br><br>
</div>
</div>
CSS:
.LONGDIV {
margin-top: 3%;
width: 96%;
border: 2px solid gray;
background-color: white;
height: 100%;
max-width: 96%;
text-align: left;
display: flex;
padding-left: 1.8%;
padding-right: 1.9%;
padding-top: 2%;
padding-bottom: 2%;
margin-bottom: 3%;
}
.megadiv {
max-width: 1200px;
margin: auto;
text-align: center;
align-items: center;
}
in .LONGDIV class is display:flex, if you need flex display add flex-direction: column; to class
Just wrap the text you want to be bigger inside <h4>some text...</h4> and warp the other text inside <p>text...</p>
and delete display:flex; from `.LONGDIV
.LONGDIV {
margin-top: 3%;
width: 96%;
border: 2px solid gray;
background-color: white;
height: 100%;
max-width: 96%;
text-align: left;
padding-left: 1.8%;
padding-right: 1.9%;
padding-top: 2%;
padding-bottom: 2%;
margin-bottom: 3%;
}
.megadiv {
max-width: 1200px;
margin: auto;
text-align: center;
align-items: center;
}
<div class="megadiv">
<div class="LONGDIV">
<h4>!Allgemeine Geschäftsbedingungen ("Bedingungen")</h4>
<br><br>
<p>
Bitte lesen Sie diese Allgemeinen Geschäftsbedingungen ("Bedingungen") sorgfältig durch, bevor Sie die Website [] (den "Dienst") nutzen.
Ihr Zugang zu und Ihre Nutzung des Dienstes setzt voraus, dass Sie diese Bedingungen akzeptieren und einhalten. Diese Bedingungen gelten für alle Besucher, Benutzer und andere, die auf den Dienst zugreifen oder ihn nutzen.
Indem Sie auf den Dienst zugreifen oder ihn nutzen, erklären Sie sich mit diesen Bedingungen einverstanden. Wenn Sie mit irgendeinem Teil der Bedingungen nicht einverstanden sind, dürfen Sie den Dienst nicht nutzen. Die Vereinbarung über die Allgemeinen Geschäftsbedingungen für [] wurde mit Hilfe von "TermsFeed.com" erstellt.
</p>
<br><br>
<h4>!Links zu anderen Websites</h4>
<br><br>
<p>
Unser Dienst kann Links zu Websites oder Diensten Dritter enthalten, die nicht im Besitz oder unter der Kontrolle von [] sind.
[] hat keine Kontrolle über und übernimmt keine Verantwortung für den Inhalt, die Datenschutzrichtlinien oder die Praktiken von Websites oder Diensten Dritter. Sie erkennen ferner an und erklären sich damit einverstanden, dass [] weder direkt noch indirekt für Schäden oder Verluste verantwortlich oder haftbar ist, die durch oder in Verbindung mit der Nutzung von oder dem Vertrauen auf solche Inhalte, Waren oder Dienste, die auf oder über solche Websites oder Dienste verfügbar sind, verursacht werden oder angeblich verursacht werden.
Wir raten Ihnen dringend, die Geschäftsbedingungen und Datenschutzrichtlinien aller Websites oder Dienste Dritter, die Sie besuchen, zu lesen.
</p>
<br><br>
</div>
</div>
`

Overflow is not showable

I have a problem with a website I'm trying to make. The problem is, that no matter what I do, I just can't get any scrollbar to get working. The Website is reachable via https://scania01.de/frp/html_twitter/. Is anyone out there who could figure out what's the problem here?
I've already tried to add overflow: auto;, overflow: visible; and overflow: scroll; to the body and to the div.
Hopefully someone can help me!
Greetings,
Alex
Change or remove the "position: fixed;" property of the .divhome_divtweets class you have in your inline styles. That should bring back the scroll bar.
After going through your code I have some feedback on your CSS:
Don't add classes to your html tag as this is not allowed
Also you can't add id's or classes to the head had or any of the tags nested within.
Avoid styling using html tags such as; div, body, p, span etc.
You have overridden and/or added styling for elements (eg. body) in multiple locations. This makes it hard to read and debug your code. If you're going to add style to a body or div element for example, then do so in a single CSS file and ovoid overriding it anywhere else.
Remove redundant and unused CSS
Move your inline CSS into a CSS file
I'd also recommend moving the scripts into their own files
Make use of flexbox and/or CSS grid for positioning your elements
The below snippet is an example of what I mean. I removed all the styles you had in the head tag and moved them into your site_global.css. I also removed the the inline style you had in the text field that is at the top of your page. I added a width=100% for that in the CSS file using the #input_tweet id. I also modified your CSS a bit, as well as removing a lot of it. I kept just enough to maintain the style of your existing page.
body {
font-family: 'Roboto', sans-serif;
}
.downloadbutton {
cursor: pointer;
font-size: 0.7em;
border-radius: 15px 15px 15px 15px;
border: 3px solid;
border-color: rgb(159, 38, 47);
padding: 7px;
background-color: #111;
color: lightgrey;
}
.downloadbuttonclosed {
cursor: no-drop;
font-size: 0.7em;
border-radius: 15px 15px 15px 15px;
border: 3px solid;
border-color: rgb(102, 24, 30);
padding: 7px;
background-color: black;
color: grey;
}
.leftmenu {
height: 100%;
width: 235px;
position: fixed;
z-index: 1;
top: 0;
left: 0;
background-color: #111;
padding-top: 20px;
color: lightslategray;
border-right: 3px solid rgb(159, 38, 47);
}
.topline {
height: 35px;
width: 1430px;
position: fixed;
z-index: 1;
top: 0;
left: 235px;
background-color: #111;
color: lightslategray;
border-bottom: 3px solid rgb(159, 38, 47);
}
.divhome_divtweets {
margin-left: 250px;
margin-top: 30px;
width: 82%;
padding: 20px;
color: lightgrey;
background-color: #111;
border-radius: 15px;
border: 3px solid;
border-color: rgb(159, 38, 47);
}
.tweets {
font-size: 20px;
padding: 10px;
margin-bottom: 40px;
border-radius: 10px;
border: 1px solid;
border-color: rgb(159, 38, 47);
}
.headlinetweetinput {
margin-top: 50px;
position: relative;
top: 0;
left: 250px;
width: 82%;
color: lightgrey;
background-color: #111;
border-radius: 15px;
border: 3px solid;
border-color: rgb(159, 38, 47);
padding: 20px;
font-size: 35px;
}
#input_tweet {
width: 100%;
}
#font-face {
font-family: "Font Awesome 5 Free";
font-style: normal;
font-weight: 400;
font-display: block;
src: url(https://ka-f.fontawesome.com/releases/v5.15.2/webfonts/free-fa-regular-400.eot);
src: url(https://ka-f.fontawesome.com/releases/v5.15.2/webfonts/free-fa-regular-400.eot?#iefix) format("embedded-opentype"), url(https://ka-f.fontawesome.com/releases/v5.15.2/webfonts/free-fa-regular-400.woff2) format("woff2"), url(https://ka-f.fontawesome.com/releases/v5.15.2/webfonts/free-fa-regular-400.woff) format("woff"), url(https://ka-f.fontawesome.com/releases/v5.15.2/webfonts/free-fa-regular-400.ttf) format("truetype"), url(https://ka-f.fontawesome.com/releases/v5.15.2/webfonts/free-fa-regular-400.svg#fontawesome) format("svg")
}
.fa,
.far,
.fas {
font-family: "Font Awesome 5 Free"
}
.fa-comment:before {
content: "\f075"
}
.fa-comment-alt:before {
content: "\f27a"
}
.fa-comment-dollar:before {
content: "\f651"
}
.fa-comment-dots:before {
content: "\f4ad"
}
.fa-comment-medical:before {
content: "\f7f5"
}
.fa-comment-slash:before {
content: "\f4b3"
}
.fa-comments:before {
content: "\f086"
}
.fa-comments-dollar:before {
content: "\f653"
}
.fa-heart:before {
content: "\f004"
}
.fa-heart-broken:before {
content: "\f7a9"
}
.fa-heartbeat:before {
content: "\f21e"
}
<html lang="de-DE">
<head>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
<meta name="generator" content="2018.0.0.379">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght#300;400&display=swap" rel="stylesheet">
<script src="https://kit.fontawesome.com/308ca0f35e.js" crossorigin="anonymous"></script>
<title>Homepage</title>
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="css/site_global.css?crc=444006867">
</head>
<body>
<div class="leftmenu" unselectable="on" onselectstart="return false;" onmousedown="return false;">
<p style="font-size: 50px; color: white; padding-top: 20px; padding-left: 30px; font-family: 'Roboto', sans-serif;">Firebird</p>
<div style="padding-top: 40px; display:none">
<a style="background-color: black;" class="leftitem" id="lefthome" onmouseover="mouseOverLeft0()" onmouseout="mouseOutLeft0()" onclick="changesite(1)"><i class="fas fa-door-closed" style="padding-right: 7px;" aria-hidden="true"></i> Home</a> <br><br>
<a class="leftitem" id="left1" onmouseover="mouseOverLeft1()" onmouseout="mouseOutLeft1()" onclick="changesite(2)"><i class="fas fa-shopping-bag" style="padding-right: 12px;" aria-hidden="true"></i> Meine Apps</a> <br><br>
</div>
</div>
<div class="topline" unselectable="on" onselectstart="return false;" onmousedown="return false;">
<div style="padding-right: 35px; padding-top: 9px;" align="right">
<!--<p style="padding-left: 20px; float:left;"><i style="padding-right: 5px;" class="fas fa-user-alt"></i> Assistant Chief | Micheal Charter</p>-->
<a id="close" onmouseover="mouseOverClose1()" onmouseout="mouseOutClose1()" onclick="close()"><i class="fas fa-times" aria-hidden="true"></i></a>
</div>
</div>
<div id="divlogin" style="line-height: 1; display: none;">
<div class="headline">
<h1><i class="fas fa-star-of-life" aria-hidden="true"></i> Login</h1>
<br>
<label for="input_username" style="font-size:20px;">Benutzername:</label>
<input style="font-size:20px; margin-left:10px;" type="text" oninput="checkbutton()" id="input_username" name="input_username"><br>
<label for="input_pwd" style="font-size:20px;">Passwort:</label>
<input style="font-size:20px; margin-left:57px;" type="text" id="input_pwd" oninput="checkbutton()" name="input_pwd"><br><br>
<button id="login_button" onclick="login()" class="downloadbuttonclosed" style="float: right;">Bestätigen</button>
</div>
</div>
<div id="divhome" style="line-height: 1; display: block;">
<div class="headlinetweetinput">
<h1 id="input_tweet_header" style="font-size:20px;margin-bottom:20px;">Schreibe einen Tweet!</h1>
<textarea oninput="checktweetbutton()" id="input_tweet" name="input_tweet" rows="4" cols="50"></textarea><br>
<button style="margin-top:15px;" id="twtbutton" class="downloadbuttonclosed">Tweeten</button>
</div>
<div id="home_tweets" class="divhome_divtweets">
<div id="7370207417623680" class="tweets">
<img style="display:inline-block;vertical-align:middle;" src="https://image.scania01.de/2020-03-03_19-33-24.png" width="40" height="40">
<h1 style="display:inline-block;">Scania01</h1><br><br>
<p style="font-size:17px;">Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das
ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. </p>
<p style="font-size:13px;color:rgb(121, 121, 121);text-align: right;">Vor 17 Minuten</p>
<p style="font-size:13px;color:rgb(196, 50, 60);text-align: left;"><i style="cursor:pointer !important;padding-right:10px;text-decoration: none;" onclick="likepost('7370207417623680')" class="far fa-heart" aria-hidden="true"> 16</i><i style="cursor:pointer !important;padding-right:10px;" class="far fa-comment"
aria-hidden="true"></i></p>
</div>
<div id="7370207417623686" class="tweets">
<img style="display:inline-block;vertical-align:middle;" src="https://image.scania01.de/2020-03-03_19-33-24.png" width="40" height="40">
<h1 style="display:inline-block;">Scania01</h1><br><br>
<p style="font-size:17px;">Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das
ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. </p>
<p style="font-size:13px;color:rgb(121, 121, 121);text-align: right;">Vor 17 Minuten</p>
<p style="font-size:13px;color:rgb(196, 50, 60);text-align: left;"><i id="7370207417623686_like" style="cursor:pointer !important;padding-right:10px;text-decoration: none;" onclick="likepost('7370207417623686_like')" class="far fa-heart" aria-hidden="true"> 16</i><i style="cursor:pointer !important;padding-right:10px;"
class="far fa-comment" aria-hidden="true"></i></p>
</div>
<div id="7370207417623686" class="tweets">
<img style="display:inline-block;vertical-align:middle;" src="https://image.scania01.de/2020-03-03_19-33-24.png" width="40" height="40">
<h1 style="display:inline-block;">Scania01</h1><br><br>
<p style="font-size:17px;">Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das
ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. </p>
<p style="font-size:13px;color:rgb(121, 121, 121);text-align: right;">Vor 17 Minuten</p>
<p style="font-size:13px;color:rgb(196, 50, 60);text-align: left;"><i id="7370207417623686_like" style="cursor:pointer !important;padding-right:10px;text-decoration: none;" onclick="likepost('7370207417623686_like')" class="far fa-heart" aria-hidden="true"> 16</i><i style="cursor:pointer !important;padding-right:10px;"
class="far fa-comment" aria-hidden="true"></i></p>
</div>
<div id="7370207417623686" class="tweets">
<img style="display:inline-block;vertical-align:middle;" src="https://image.scania01.de/2020-03-03_19-33-24.png" width="40" height="40">
<h1 style="display:inline-block;">Scania01</h1><br><br>
<p style="font-size:17px;">Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das
ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet,
dass das hier mein Tweet ist. Das ist mein Tweet. Ich habe getweetet, dass das hier mein Tweet ist. </p>
<p style="font-size:13px;color:rgb(121, 121, 121);text-align: right;">Vor 17 Minuten</p>
<p style="font-size:13px;color:rgb(196, 50, 60);text-align: left;"><i id="7370207417623686_like" style="cursor:pointer !important;padding-right:10px;text-decoration: none;" onclick="likepost('7370207417623686_like')" class="far fa-heart" aria-hidden="true"> 16</i><i style="cursor:pointer !important;padding-right:10px;"
class="far fa-comment" aria-hidden="true"></i></p>
</div>
</div>
</div>
<!-- Other scripts -->
<!-- RequireJS script -->
<script>
var randomtweetinputtextes = ["Was passiert gerade?", "Was geht ab?", "Was möchtest du uns mitteilen?", "Was möchtest du der Welt mitteilen?", "Tweete etwas!", "Schreibe einen Tweet!"]
var randomtweetinputtexteszahl = Math.floor(Math.random() * randomtweetinputtextes.length)
document.getElementById("input_tweet_header").innerHTML = randomtweetinputtextes[randomtweetinputtexteszahl]
document.getElementById("divlogin").style.display = "none"
document.getElementById("divhome").style.display = "block"
//addtweet("s")
function tosite(site) {
if (site == "home") {
document.getElementById("input_tweet_header").innerHTML = randomtweetinputtextes[randomtweetinputtexteszahl]
document.getElementById("divlogin").style.display = "none"
document.getElementById("divhome").style.display = "block"
}
}
function checkbutton() {
if (document.getElementById("input_username").value != "" && document.getElementById("input_pwd").value != "") {
document.getElementById("login_button").classList.remove("downloadbuttonclosed")
document.getElementById("login_button").classList.add("downloadbutton")
} else if (true) {
document.getElementById("login_button").classList.remove("downloadbutton")
document.getElementById("login_button").classList.add("downloadbuttonclosed")
}
}
function checktweetbutton() {
console.log(document.getElementById("input_tweet").value.length)
if (document.getElementById("input_tweet").value.length > 5) {
document.getElementById("twtbutton").classList.remove("downloadbuttonclosed")
document.getElementById("twtbutton").classList.add("downloadbutton")
} else if (true) {
document.getElementById("twtbutton").classList.add("downloadbuttonclosed")
document.getElementById("twtbutton").classList.remove("downloadbutton")
}
}
function login() {
if (true) {
tosite("home")
}
}
function addtweet(id, userimg, username, tweet, likes, comments) {
var randomtweetid = Math.floor(Math.random() * 9999999999999999)
console.log(randomtweetid)
}
function likepost(id) {
console.log(id)
console.log(document.getElementById(id).classList[0])
//console.log(document.getElementById(id).classList[1])
if (document.getElementById(id).classList[0] == "far") {
var newlikes = parseInt(document.getElementById(id).innerHTML, 10) + 1
document.getElementById(id).innerHTML = " " + newlikes
document.getElementById(id).classList.remove("far")
document.getElementById(id).classList.add("fas")
// FIVEM: ADD LIKE
} else if (document.getElementById(id).classList[0] == "fas") {
var newlikes = parseInt(document.getElementById(id).innerHTML, 10) - 1
document.getElementById(id).innerHTML = " " + newlikes
document.getElementById(id).classList.remove("fas")
document.getElementById(id).classList.add("far")
// FIVEM: REMOVE LIKE
} else if (document.getElementById(id).classList[1] == "far") {
var newlikes = parseInt(document.getElementById(id).innerHTML, 10) + 1
document.getElementById(id).innerHTML = " " + newlikes
document.getElementById(id).classList.remove("far")
document.getElementById(id).classList.add("fas")
// FIVEM: ADD LIKE
} else if (document.getElementById(id).classList[1] == "fas") {
var newlikes = parseInt(document.getElementById(id).innerHTML, 10) - 1
document.getElementById(id).innerHTML = " " + newlikes
document.getElementById(id).classList.remove("fas")
document.getElementById(id).classList.add("far")
// FIVEM: REMOVE LIKE
}
}
function mouseOverLeft0() {
document.getElementById("lefthome").style.color = "CadetBlue";
document.getElementById("lefthome").style.textDecoration = "none";
document.getElementById("lefthome").style.cursor = "context-menu";
}
function mouseOutLeft0() {
document.getElementById("lefthome").style.color = "lightslategray";
}
function mouseOverLeft1() {
document.getElementById("left1").style.color = "CadetBlue";
document.getElementById("left1").style.textDecoration = "none";
document.getElementById("left1").style.cursor = "context-menu";
}
function mouseOutLeft1() {
document.getElementById("left1").style.color = "lightslategray";
}
function mouseOverLeft2() {
document.getElementById("left2").style.color = "CadetBlue";
document.getElementById("left2").style.textDecoration = "none";
document.getElementById("left2").style.cursor = "context-menu";
}
function mouseOutLeft2() {
document.getElementById("left2").style.color = "lightslategray";
}
function mouseOverLeft3() {
document.getElementById("left3").style.color = "CadetBlue";
document.getElementById("left3").style.textDecoration = "none";
document.getElementById("left3").style.cursor = "context-menu";
}
function mouseOutLeft3() {
document.getElementById("left3").style.color = "lightslategray";
}
</script>
</body>
</html>

child div with relative height in parent div with relative height

I have a parent div that creates a grey layer and a inner child div that contains the text which should be scrollable.
Problem: the child div doesnt consider the max-height 100% and thsu overruns the parent div and doesnt become scrollable.
Note: I know it can be fixed if the parent or child div is set in absolute values (pixels), but I want both to be dynamic and adjust to browser size.
Does anyone have a solution to this?
#dataprotection-window {
width: 50%;
max-height: 85%;
padding: 40px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
box-shadow: 0px 2px 6px rgba(0, 0, 0, 1);
border-radius: 5%;
background: #2f2f2f;
opacity: 0.9;
}
#datainner {
border: 1px solid green;
max-height: 100%;
position: relative;
overflow-y: auto;
}
#dataprotection-window::-webkit-scrollbar-thumb {
position: relative;
right: 20px;
padding-right: 20px;
margin-right: 20px;
}
#dataprotection-headline h1 {
color: #fff;
text-align: center;
letter-spacing: 0.5px;
padding-bottom: 20px;
border: none;
border-bottom: 1px solid transparent;
border-image: linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
-webkit-border-image: -webkit-linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
-moz-border-image: -moz-linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
border-image-slice: 1;
}
#dataprotection-window p {
font-weight: 300;
text-align: justify;
}
#dataprotection-window h2 {
color: #fff;
font-size: 20px;
-webkit-margin-after: 5px;
}
<div id="main">
<div id="dataprotection-window">
<div id="datainner">
<div id="dataprotection-headline">
<h1>Datenschutz</h1>
</div>
<div id="dataprotection-disclaimer">
<h2>Datenschutz</h2>
<p>Die Betreiber dieser Seiten nehmen den Schutz Ihrer persönlichen Daten sehr ernst. Wir behandeln Ihre personenbezogenen Daten vertraulich und entsprechend der gesetzlichen Datenschutzvorschriften sowie dieser Datenschutzerklärung. Die Nutzung
unserer Website ist in der Regel ohne Angabe personenbezogener Daten möglich. Soweit auf unseren Seiten personenbezogene Daten (beispielsweise Name, Anschrift oder E-Mail-Adressen) erhoben werden, erfolgt dies, soweit möglich, stets auf freiwilliger
Basis. Diese Daten werden ohne Ihre ausdrückliche Zustimmung nicht an Dritte weitergegeben. Wir weisen darauf hin, dass die Datenübertragung im Internet (z.B. bei der Kommunikation per E-Mail) Sicherheitslücken aufweisen kann. Ein lückenloser
Schutz der Daten vor dem Zugriff durch Dritte ist nicht möglich.
</p>
<h2>Cookies</h2>
<p>Die Internetseiten verwenden teilweise so genannte Cookies. Cookies richten auf Ihrem Rechner keinen Schaden an und enthalten keine Viren. Cookies dienen dazu, unser Angebot nutzerfreundlicher, effektiver und sicherer zu machen. Cookies sind kleine
Textdateien, die auf Ihrem Rechner abgelegt werden und die Ihr Browser speichert. Die meisten der von uns verwendeten Cookies sind so genannte „Session-Cookies“. Sie werden nach Ende Ihres Besuchs automatisch gelöscht. Andere Cookies bleiben
auf Ihrem Endgerät gespeichert, bis Sie diese löschen. Diese Cookies ermöglichen es uns, Ihren Browser beim nächsten Besuch wiederzuerkennen. Sie können Ihren Browser so einstellen, dass Sie über das Setzen von Cookies informiert werden und
Cookies nur im Einzelfall erlauben, die Annahme von Cookies für bestimmte Fälle oder generell ausschließen sowie das automatische Löschen der Cookies beim Schließen des Browser aktivieren. Bei der Deaktivierung von Cookies kann die Funktionalität
dieser Website eingeschränkt sein.</p>
<h2>Server-Log-Files</h2>
<p>Der Provider der Seiten erhebt und speichert automatisch Informationen in so genannten Server-Log Files, die Ihr Browser automatisch an uns übermittelt. Dies sind: Browsertyp und Browserversion verwendetes Betriebssystem Referrer URL Hostname
des zugreifenden Rechners Uhrzeit der Serveranfrage Diese Daten sind nicht bestimmten Personen zuordenbar. Eine Zusammenführung dieser Daten mit anderen Datenquellen wird nicht vorgenommen. Wir behalten uns vor, diese Daten nachträglich zu prüfen,
wenn uns konkrete Anhaltspunkte für eine rechtswidrige Nutzung bekannt werden.</p>
<h2>Kontaktformular</h2>
<p>Wenn Sie uns per Kontaktformular Anfragen zukommen lassen, werden Ihre Angaben aus dem Anfrageformular inklusive der von Ihnen dort angegebenen Kontaktdaten zwecks Bearbeitung der Anfrage und für den Fall von Anschlussfragen bei uns gespeichert.
Diese Daten geben wir nicht ohne Ihre Einwilligung weiter.</p>
<h2>Newsletter</h2>
<p>Wenn Sie den auf der Website angebotenen Newsletter beziehen möchten, benötigen wir von Ihnen eine E-Mail-Adresse sowie Informationen, welche uns die Überprüfung gestatten, dass Sie der Inhaber der angegebenen E-Mail-Adresse sind und mit dem Empfang
des Newsletters einverstanden sind. Weitere Daten werden nicht erhoben. Diese Daten verwenden wir ausschließlich für den Versand der angeforderten Informationen und geben sie nicht an Dritte weiter. Die erteilte Einwilligung zur Speicherung
der Daten, der E-Mail-Adresse sowie deren Nutzung zum Versand des Newsletters können Sie jederzeit widerrufen, etwa über den "Austragen"-Link im Newsletter.</p>
<h2>Google Analytics</h2>
<p>Diese Website nutzt Funktionen des Webanalysedienstes Google Analytics. Anbieter ist die Google Inc., 1600 Amphitheatre Parkway Mountain View, CA 94043, USA. Google Analytics verwendet so genannte "Cookies". Das sind Textdateien, die auf Ihrem
Computer gespeichert werden und die eine Analyse der Benutzung der Website durch Sie ermöglichen. Die durch den Cookie erzeugten Informationen über Ihre Benutzung dieser Website werden in der Regel an einen Server von Google in den USA übertragen
und dort gespeichert.</p>
<p>IP-Anonymisierung<br> Wir haben auf dieser Website die Funktion IP-Anonymisierung aktiviert. Dadurch wird Ihre IP-Adresse von Google innerhalb von Mitgliedstaaten der Europäischen Union oder in anderen Vertragsstaaten des Abkommens über den Europäischen
Wirtschaftsraum vor der Übermittlung in die USA gekürzt. Nur in Ausnahmefällen wird die volle IP-Adresse an einen Server von Google in den USA übertragen und dort gekürzt. Im Auftrag des Betreibers dieser Website wird Google diese Informationen
benutzen, um Ihre Nutzung der Website auszuwerten, um Reports über die Websiteaktivitäten zusammenzustellen und um weitere mit der Websitenutzung und der Internetnutzung verbundene Dienstleistungen gegenüber dem Websitebetreiber zu erbringen.
Die im Rahmen von Google Analytics von Ihrem Browser übermittelte IPAdresse wird nicht mit anderen Daten von Google zusammengeführt.</p>
<p>Browser Plugin<br> Sie können die Speicherung der Cookies durch eine entsprechende Einstellung Ihrer Browser-Software verhindern; wir weisen Sie jedoch darauf hin, dass Sie in diesem Fall gegebenenfalls nicht sämtliche Funktionen dieser Website
vollumfänglich werden nutzen können. Sie können darüber hinaus die Erfassung der durch den Cookie erzeugten und auf Ihre Nutzung der Website bezogenen Daten (inkl. Ihrer IP-Adresse) an Google sowie die Verarbeitung dieser Daten durch Google
verhindern, indem Sie das unter dem folgenden Link verfügbare Browser-Plugin herunterladen und installieren: https://tools.google.com/dlpage/gaoptout?hl=de
</p>
<p>Widerspruch gegen Datenerfassung<br> Sie können die Erfassung Ihrer Daten durch Google Analytics verhindern, indem Sie auf folgenden Link klicken. Es wird ein Opt-Out-Cookie gesetzt, der die Erfassung Ihrer Daten bei zukünftigen Besuchen dieser
Website verhindert: Google Analytics deaktivieren Mehr Informationen zum Umgang mit Nutzerdaten bei Google Analytics finden Sie in der Datenschutzerklärung von Google: https://support.google.com/analytics/answer/6004245?hl=de</p>
<p>Auftragsverarbeitung<br> Sofern wir mit Google einen Vertrag zur Auftragsdatenverarbeitung abgeschlossen haben, setzen wir die strengen Vorgaben der deutschen Datenschutzbehörden bei der Nutzung von Google Analytics vollständig um.</p>
<p>Demografische Merkmale bei Google Analytics<br> Diese Website nutzt die Funktion “demografische Merkmale” von Google Analytics. Dadurch können Berichte erstellt werden, die Aussagen zu Alter, Geschlecht und Interessen der Seitenbesucher enthalten.
Diese Daten stammen aus interessenbezogener Werbung von Google sowie aus Besucherdaten von Drittanbietern. Diese Daten können keiner bestimmten Person zugeordnet werden. Sie können diese Funktion jederzeit über die Anzeigeneinstellungen in Ihrem
Google-Konto deaktivieren oder die Erfassung Ihrer Daten durch Google Analytics wie im Punkt “Widerspruch gegen Datenerfassung” dargestellt generell untersagen.</p>
<h2>Facebook-Plugins</h2>
<p>Auf unseren Seiten sind Plugins des sozialen Netzwerks Facebook, Anbieter Facebook Inc., 1 Hacker Way, Menlo Park, California 94025, USA, integriert. Die Facebook-Plugins erkennen Sie an dem Facebook-Logo oder dem "Like-Button" ("Gefällt mir")
auf unserer Seite. Eine Übersicht über die Facebook-Plugins finden Sie hier: https://developers.facebook.com/docs/plugins/. Wenn Sie unsere Seiten besuchen, wird über das Plugin eine direkte Verbindung zwischen Ihrem Browser und dem Facebook-Server
hergestellt. Facebook erhält dadurch die Information, dass Sie mit Ihrer IP-Adresse unsere Seite besucht haben. Wenn Sie den Facebook "Like-Button" anklicken während Sie in Ihrem Facebook-Account eingeloggt sind, können Sie die Inhalte unserer
Seiten auf Ihrem Facebook-Profil verlinken. Dadurch kann Facebook den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten keine Kenntnis vom Inhalt der übermittelten Daten sowie deren Nutzung
durch Facebook erhalten. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Facebook unter https://de-de.facebook.com/policy.php. Wenn Sie nicht wünschen, dass Facebook den Besuch unserer Seiten Ihrem Facebook-Nutzerkonto
zuordnen kann, loggen Sie sich bitte aus Ihrem Facebook-Benutzerkonto aus.</p>
<h2>Instagram</h2>
<p>Auf unseren Seiten sind Funktionen des Dienstes Instagram eingebunden. Diese Funktionen werden angeboten durch die Instagram Inc., 1601 Willow Road, Menlo Park, CA, 94025, USA integriert. Wenn Sie in Ihrem Instagram-Account eingeloggt sind können
Sie durch Anklicken des Instagram-Buttons die Inhalte unserer Seiten mit Ihrem Instagram-Profil verlinken. Dadurch kann Instagram den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten
keine Kenntnis vom Inhalt der u?bermittelten Daten sowie deren Nutzung durch Instagram erhalten. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Instagram: https://instagram.com/about/legal/privacy/
</p>
<h2>Kommentarfunktion auf dieser Website</h2>
<p>Für die Kommentarfunktion auf dieser Seite werden neben Ihrem Kommentar auch Angaben zum Zeitpunkt der Erstellung des Kommentars, wenn Sie nicht anonym posten, Ihre E-Mail-Adresse und ggf. der von Ihnen gewählte Nutzername gespeichert. Unsere
Kommentarfunktion speichert die IP-Adressen der Nutzer, die Kommentare verfassen. Da wir Kommentare auf unserer Seite nicht vor der Freischaltung prüfen, benötigen wir diese Daten, um im Falle von Rechtsverletzungen wie Beleidigungen oder Propaganda
gegen den Verfasser vorgehen zu können.</p>
<h2>SSL-Verschlüsselung</h2>
<p>Diese Seite nutzt aus Gründen der Sicherheit und zum Schutz der Übertragung vertraulicher Inhalte, wie zum Beispiel der Anfragen, die Sie an uns als Seitenbetreiber senden, eine SSL-Verschlüsselung. Eine verschlüsselte Verbindung erkennen Sie
daran, dass die Adresszeile des Browsers von "http://" auf "https://" wechselt und an dem Schloss-Symbol in Ihrer Browserzeile. Wenn die SSL Verschlüsselung aktiviert ist, können die Daten, die Sie an uns übermitteln, nicht von Dritten mitgelesen
werden.</p>
<h2>Recht auf Auskunft, Löschung, Sperrung</h2>
<p>Sie haben jederzeit das Recht auf unentgeltliche Auskunft über Ihre gespeicherten personenbezogenen Daten, deren Herkunft und Empfänger und den Zweck der Datenverarbeitung sowie ein Recht auf Berichtigung, Sperrung oder Löschung dieser Daten.
Hierzu sowie zu weiteren Fragen zum Thema personenbezogene Daten können Sie sich jederzeit unter der im Impressum angegebenen Adresse an uns wenden.</p>
<h2>Unser Widerspruch für Werbe-Mails</h2>
<p>Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit widersprochen. Die Betreiber der Seiten behalten sich ausdrücklich
rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-E-Mails, vor.</p>
</div>
</div>
</div>
</div>
Simply change the max-height to height.
Why?
In you case the parent container is set to absolute position with no positioned ancestor element so it's relative to the viewport and thus setting percentage with height will work. By doing this you will allow the max-height of the child element to be considered because:
Specifies a percentage for determining the used value. The percentage
is calculated with respect to the height of the generated box's
containing block. ref
So max-height can only work if the height of parent is defined which is not the case of your initial code.
#dataprotection-window {
width: 50%;
height: 85%;
padding: 40px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
box-shadow: 0px 2px 6px rgba(0, 0, 0, 1);
border-radius: 5%;
background: #2f2f2f;
opacity: 0.9;
}
#datainner {
border: 1px solid green;
max-height: 100%;
position: relative;
overflow-y: auto;
}
#dataprotection-window::-webkit-scrollbar-thumb {
position: relative;
right: 20px;
padding-right: 20px;
margin-right: 20px;
}
#dataprotection-headline h1 {
color: #fff;
text-align: center;
letter-spacing: 0.5px;
padding-bottom: 20px;
border: none;
border-bottom: 1px solid transparent;
border-image: linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
-webkit-border-image: -webkit-linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
-moz-border-image: -moz-linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
border-image-slice: 1;
}
#dataprotection-window p {
font-weight: 300;
text-align: justify;
}
#dataprotection-window h2 {
color: #fff;
font-size: 20px;
-webkit-margin-after: 5px;
}
<div id="main">
<div id="dataprotection-window">
<div id="datainner">
<div id="dataprotection-headline">
<h1>Datenschutz</h1>
</div>
<div id="dataprotection-disclaimer">
<h2>Datenschutz</h2>
<p>Die Betreiber dieser Seiten nehmen den Schutz Ihrer persönlichen Daten sehr ernst. Wir behandeln Ihre personenbezogenen Daten vertraulich und entsprechend der gesetzlichen Datenschutzvorschriften sowie dieser Datenschutzerklärung. Die Nutzung
unserer Website ist in der Regel ohne Angabe personenbezogener Daten möglich. Soweit auf unseren Seiten personenbezogene Daten (beispielsweise Name, Anschrift oder E-Mail-Adressen) erhoben werden, erfolgt dies, soweit möglich, stets auf freiwilliger
Basis. Diese Daten werden ohne Ihre ausdrückliche Zustimmung nicht an Dritte weitergegeben. Wir weisen darauf hin, dass die Datenübertragung im Internet (z.B. bei der Kommunikation per E-Mail) Sicherheitslücken aufweisen kann. Ein lückenloser
Schutz der Daten vor dem Zugriff durch Dritte ist nicht möglich.
</p>
<h2>Cookies</h2>
<p>Die Internetseiten verwenden teilweise so genannte Cookies. Cookies richten auf Ihrem Rechner keinen Schaden an und enthalten keine Viren. Cookies dienen dazu, unser Angebot nutzerfreundlicher, effektiver und sicherer zu machen. Cookies sind kleine
Textdateien, die auf Ihrem Rechner abgelegt werden und die Ihr Browser speichert. Die meisten der von uns verwendeten Cookies sind so genannte „Session-Cookies“. Sie werden nach Ende Ihres Besuchs automatisch gelöscht. Andere Cookies bleiben
auf Ihrem Endgerät gespeichert, bis Sie diese löschen. Diese Cookies ermöglichen es uns, Ihren Browser beim nächsten Besuch wiederzuerkennen. Sie können Ihren Browser so einstellen, dass Sie über das Setzen von Cookies informiert werden und
Cookies nur im Einzelfall erlauben, die Annahme von Cookies für bestimmte Fälle oder generell ausschließen sowie das automatische Löschen der Cookies beim Schließen des Browser aktivieren. Bei der Deaktivierung von Cookies kann die Funktionalität
dieser Website eingeschränkt sein.</p>
<h2>Server-Log-Files</h2>
<p>Der Provider der Seiten erhebt und speichert automatisch Informationen in so genannten Server-Log Files, die Ihr Browser automatisch an uns übermittelt. Dies sind: Browsertyp und Browserversion verwendetes Betriebssystem Referrer URL Hostname
des zugreifenden Rechners Uhrzeit der Serveranfrage Diese Daten sind nicht bestimmten Personen zuordenbar. Eine Zusammenführung dieser Daten mit anderen Datenquellen wird nicht vorgenommen. Wir behalten uns vor, diese Daten nachträglich zu prüfen,
wenn uns konkrete Anhaltspunkte für eine rechtswidrige Nutzung bekannt werden.</p>
<h2>Kontaktformular</h2>
<p>Wenn Sie uns per Kontaktformular Anfragen zukommen lassen, werden Ihre Angaben aus dem Anfrageformular inklusive der von Ihnen dort angegebenen Kontaktdaten zwecks Bearbeitung der Anfrage und für den Fall von Anschlussfragen bei uns gespeichert.
Diese Daten geben wir nicht ohne Ihre Einwilligung weiter.</p>
<h2>Newsletter</h2>
<p>Wenn Sie den auf der Website angebotenen Newsletter beziehen möchten, benötigen wir von Ihnen eine E-Mail-Adresse sowie Informationen, welche uns die Überprüfung gestatten, dass Sie der Inhaber der angegebenen E-Mail-Adresse sind und mit dem Empfang
des Newsletters einverstanden sind. Weitere Daten werden nicht erhoben. Diese Daten verwenden wir ausschließlich für den Versand der angeforderten Informationen und geben sie nicht an Dritte weiter. Die erteilte Einwilligung zur Speicherung
der Daten, der E-Mail-Adresse sowie deren Nutzung zum Versand des Newsletters können Sie jederzeit widerrufen, etwa über den "Austragen"-Link im Newsletter.</p>
<h2>Google Analytics</h2>
<p>Diese Website nutzt Funktionen des Webanalysedienstes Google Analytics. Anbieter ist die Google Inc., 1600 Amphitheatre Parkway Mountain View, CA 94043, USA. Google Analytics verwendet so genannte "Cookies". Das sind Textdateien, die auf Ihrem
Computer gespeichert werden und die eine Analyse der Benutzung der Website durch Sie ermöglichen. Die durch den Cookie erzeugten Informationen über Ihre Benutzung dieser Website werden in der Regel an einen Server von Google in den USA übertragen
und dort gespeichert.</p>
<p>IP-Anonymisierung<br> Wir haben auf dieser Website die Funktion IP-Anonymisierung aktiviert. Dadurch wird Ihre IP-Adresse von Google innerhalb von Mitgliedstaaten der Europäischen Union oder in anderen Vertragsstaaten des Abkommens über den Europäischen
Wirtschaftsraum vor der Übermittlung in die USA gekürzt. Nur in Ausnahmefällen wird die volle IP-Adresse an einen Server von Google in den USA übertragen und dort gekürzt. Im Auftrag des Betreibers dieser Website wird Google diese Informationen
benutzen, um Ihre Nutzung der Website auszuwerten, um Reports über die Websiteaktivitäten zusammenzustellen und um weitere mit der Websitenutzung und der Internetnutzung verbundene Dienstleistungen gegenüber dem Websitebetreiber zu erbringen.
Die im Rahmen von Google Analytics von Ihrem Browser übermittelte IPAdresse wird nicht mit anderen Daten von Google zusammengeführt.</p>
<p>Browser Plugin<br> Sie können die Speicherung der Cookies durch eine entsprechende Einstellung Ihrer Browser-Software verhindern; wir weisen Sie jedoch darauf hin, dass Sie in diesem Fall gegebenenfalls nicht sämtliche Funktionen dieser Website
vollumfänglich werden nutzen können. Sie können darüber hinaus die Erfassung der durch den Cookie erzeugten und auf Ihre Nutzung der Website bezogenen Daten (inkl. Ihrer IP-Adresse) an Google sowie die Verarbeitung dieser Daten durch Google
verhindern, indem Sie das unter dem folgenden Link verfügbare Browser-Plugin herunterladen und installieren: https://tools.google.com/dlpage/gaoptout?hl=de
</p>
<p>Widerspruch gegen Datenerfassung<br> Sie können die Erfassung Ihrer Daten durch Google Analytics verhindern, indem Sie auf folgenden Link klicken. Es wird ein Opt-Out-Cookie gesetzt, der die Erfassung Ihrer Daten bei zukünftigen Besuchen dieser
Website verhindert: Google Analytics deaktivieren Mehr Informationen zum Umgang mit Nutzerdaten bei Google Analytics finden Sie in der Datenschutzerklärung von Google: https://support.google.com/analytics/answer/6004245?hl=de</p>
<p>Auftragsverarbeitung<br> Sofern wir mit Google einen Vertrag zur Auftragsdatenverarbeitung abgeschlossen haben, setzen wir die strengen Vorgaben der deutschen Datenschutzbehörden bei der Nutzung von Google Analytics vollständig um.</p>
<p>Demografische Merkmale bei Google Analytics<br> Diese Website nutzt die Funktion “demografische Merkmale” von Google Analytics. Dadurch können Berichte erstellt werden, die Aussagen zu Alter, Geschlecht und Interessen der Seitenbesucher enthalten.
Diese Daten stammen aus interessenbezogener Werbung von Google sowie aus Besucherdaten von Drittanbietern. Diese Daten können keiner bestimmten Person zugeordnet werden. Sie können diese Funktion jederzeit über die Anzeigeneinstellungen in Ihrem
Google-Konto deaktivieren oder die Erfassung Ihrer Daten durch Google Analytics wie im Punkt “Widerspruch gegen Datenerfassung” dargestellt generell untersagen.</p>
<h2>Facebook-Plugins</h2>
<p>Auf unseren Seiten sind Plugins des sozialen Netzwerks Facebook, Anbieter Facebook Inc., 1 Hacker Way, Menlo Park, California 94025, USA, integriert. Die Facebook-Plugins erkennen Sie an dem Facebook-Logo oder dem "Like-Button" ("Gefällt mir")
auf unserer Seite. Eine Übersicht über die Facebook-Plugins finden Sie hier: https://developers.facebook.com/docs/plugins/. Wenn Sie unsere Seiten besuchen, wird über das Plugin eine direkte Verbindung zwischen Ihrem Browser und dem Facebook-Server
hergestellt. Facebook erhält dadurch die Information, dass Sie mit Ihrer IP-Adresse unsere Seite besucht haben. Wenn Sie den Facebook "Like-Button" anklicken während Sie in Ihrem Facebook-Account eingeloggt sind, können Sie die Inhalte unserer
Seiten auf Ihrem Facebook-Profil verlinken. Dadurch kann Facebook den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten keine Kenntnis vom Inhalt der übermittelten Daten sowie deren Nutzung
durch Facebook erhalten. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Facebook unter https://de-de.facebook.com/policy.php. Wenn Sie nicht wünschen, dass Facebook den Besuch unserer Seiten Ihrem Facebook-Nutzerkonto
zuordnen kann, loggen Sie sich bitte aus Ihrem Facebook-Benutzerkonto aus.</p>
<h2>Instagram</h2>
<p>Auf unseren Seiten sind Funktionen des Dienstes Instagram eingebunden. Diese Funktionen werden angeboten durch die Instagram Inc., 1601 Willow Road, Menlo Park, CA, 94025, USA integriert. Wenn Sie in Ihrem Instagram-Account eingeloggt sind können
Sie durch Anklicken des Instagram-Buttons die Inhalte unserer Seiten mit Ihrem Instagram-Profil verlinken. Dadurch kann Instagram den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten
keine Kenntnis vom Inhalt der u?bermittelten Daten sowie deren Nutzung durch Instagram erhalten. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Instagram: https://instagram.com/about/legal/privacy/
</p>
<h2>Kommentarfunktion auf dieser Website</h2>
<p>Für die Kommentarfunktion auf dieser Seite werden neben Ihrem Kommentar auch Angaben zum Zeitpunkt der Erstellung des Kommentars, wenn Sie nicht anonym posten, Ihre E-Mail-Adresse und ggf. der von Ihnen gewählte Nutzername gespeichert. Unsere
Kommentarfunktion speichert die IP-Adressen der Nutzer, die Kommentare verfassen. Da wir Kommentare auf unserer Seite nicht vor der Freischaltung prüfen, benötigen wir diese Daten, um im Falle von Rechtsverletzungen wie Beleidigungen oder Propaganda
gegen den Verfasser vorgehen zu können.</p>
<h2>SSL-Verschlüsselung</h2>
<p>Diese Seite nutzt aus Gründen der Sicherheit und zum Schutz der Übertragung vertraulicher Inhalte, wie zum Beispiel der Anfragen, die Sie an uns als Seitenbetreiber senden, eine SSL-Verschlüsselung. Eine verschlüsselte Verbindung erkennen Sie
daran, dass die Adresszeile des Browsers von "http://" auf "https://" wechselt und an dem Schloss-Symbol in Ihrer Browserzeile. Wenn die SSL Verschlüsselung aktiviert ist, können die Daten, die Sie an uns übermitteln, nicht von Dritten mitgelesen
werden.</p>
<h2>Recht auf Auskunft, Löschung, Sperrung</h2>
<p>Sie haben jederzeit das Recht auf unentgeltliche Auskunft über Ihre gespeicherten personenbezogenen Daten, deren Herkunft und Empfänger und den Zweck der Datenverarbeitung sowie ein Recht auf Berichtigung, Sperrung oder Löschung dieser Daten.
Hierzu sowie zu weiteren Fragen zum Thema personenbezogene Daten können Sie sich jederzeit unter der im Impressum angegebenen Adresse an uns wenden.</p>
<h2>Unser Widerspruch für Werbe-Mails</h2>
<p>Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit widersprochen. Die Betreiber der Seiten behalten sich ausdrücklich
rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-E-Mails, vor.</p>
</div>
</div>
</div>
</div>
You may use here the display:flex properties:
#dataprotection-window {
width: 50%;
max-height: 85%;
padding: 40px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
box-shadow: 0px 2px 6px rgba(0, 0, 0, 1);
border-radius: 5%;
background: #2f2f2f;
opacity: 0.9;
display: flex;/* let flex do the math for you */
}
#datainner {
border: 1px solid green;
flex: 1;/* fills up entire room avalaible*/
overflow: auto;/* show scrollbar when needed */
}
https://jsfiddle.net/agz8krxf/8/ or demo below
#dataprotection-window {
width: 50%;
max-height: 85%;
padding: 40px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
box-shadow: 0px 2px 6px rgba(0, 0, 0, 1);
border-radius: 5%;
background: #2f2f2f;
opacity: 0.9;
display: flex;
}
#datainner {
border: 1px solid green;
flex: 1;
overflow: auto;
}
#dataprotection-window::-webkit-scrollbar-thumb {
position: relative;
right: 20px;
padding-right: 20px;
margin-right: 20px;
}
#dataprotection-headline h1 {
color: #fff;
text-align: center;
letter-spacing: 0.5px;
padding-bottom: 20px;
border: none;
border-bottom: 1px solid transparent;
border-image: linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
-webkit-border-image: -webkit-linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
-moz-border-image: -moz-linear-gradient(left, #2f2f2f, #fff, #2f2f2f);
border-image-slice: 1;
}
#dataprotection-window p {
font-weight: 300;
text-align: justify;
}
#dataprotection-window h2 {
color: #fff;
font-size: 20px;
-webkit-margin-after: 5px;
}
<div id="main">
<div id="dataprotection-window">
<div id="datainner">
<div id="dataprotection-headline">
<h1>Datenschutz</h1>
</div>
<div id="dataprotection-disclaimer">
<h2>Datenschutz</h2>
<p>Die Betreiber dieser Seiten nehmen den Schutz Ihrer persönlichen Daten sehr ernst. Wir behandeln Ihre personenbezogenen Daten vertraulich und entsprechend der gesetzlichen Datenschutzvorschriften sowie dieser Datenschutzerklärung. Die Nutzung
unserer Website ist in der Regel ohne Angabe personenbezogener Daten möglich. Soweit auf unseren Seiten personenbezogene Daten (beispielsweise Name, Anschrift oder E-Mail-Adressen) erhoben werden, erfolgt dies, soweit möglich, stets auf freiwilliger
Basis. Diese Daten werden ohne Ihre ausdrückliche Zustimmung nicht an Dritte weitergegeben. Wir weisen darauf hin, dass die Datenübertragung im Internet (z.B. bei der Kommunikation per E-Mail) Sicherheitslücken aufweisen kann. Ein lückenloser
Schutz der Daten vor dem Zugriff durch Dritte ist nicht möglich.
</p>
<h2>Cookies</h2>
<p>Die Internetseiten verwenden teilweise so genannte Cookies. Cookies richten auf Ihrem Rechner keinen Schaden an und enthalten keine Viren. Cookies dienen dazu, unser Angebot nutzerfreundlicher, effektiver und sicherer zu machen. Cookies sind kleine
Textdateien, die auf Ihrem Rechner abgelegt werden und die Ihr Browser speichert. Die meisten der von uns verwendeten Cookies sind so genannte „Session-Cookies“. Sie werden nach Ende Ihres Besuchs automatisch gelöscht. Andere Cookies bleiben
auf Ihrem Endgerät gespeichert, bis Sie diese löschen. Diese Cookies ermöglichen es uns, Ihren Browser beim nächsten Besuch wiederzuerkennen. Sie können Ihren Browser so einstellen, dass Sie über das Setzen von Cookies informiert werden und
Cookies nur im Einzelfall erlauben, die Annahme von Cookies für bestimmte Fälle oder generell ausschließen sowie das automatische Löschen der Cookies beim Schließen des Browser aktivieren. Bei der Deaktivierung von Cookies kann die Funktionalität
dieser Website eingeschränkt sein.</p>
<h2>Server-Log-Files</h2>
<p>Der Provider der Seiten erhebt und speichert automatisch Informationen in so genannten Server-Log Files, die Ihr Browser automatisch an uns übermittelt. Dies sind: Browsertyp und Browserversion verwendetes Betriebssystem Referrer URL Hostname
des zugreifenden Rechners Uhrzeit der Serveranfrage Diese Daten sind nicht bestimmten Personen zuordenbar. Eine Zusammenführung dieser Daten mit anderen Datenquellen wird nicht vorgenommen. Wir behalten uns vor, diese Daten nachträglich zu prüfen,
wenn uns konkrete Anhaltspunkte für eine rechtswidrige Nutzung bekannt werden.</p>
<h2>Kontaktformular</h2>
<p>Wenn Sie uns per Kontaktformular Anfragen zukommen lassen, werden Ihre Angaben aus dem Anfrageformular inklusive der von Ihnen dort angegebenen Kontaktdaten zwecks Bearbeitung der Anfrage und für den Fall von Anschlussfragen bei uns gespeichert.
Diese Daten geben wir nicht ohne Ihre Einwilligung weiter.</p>
<h2>Newsletter</h2>
<p>Wenn Sie den auf der Website angebotenen Newsletter beziehen möchten, benötigen wir von Ihnen eine E-Mail-Adresse sowie Informationen, welche uns die Überprüfung gestatten, dass Sie der Inhaber der angegebenen E-Mail-Adresse sind und mit dem Empfang
des Newsletters einverstanden sind. Weitere Daten werden nicht erhoben. Diese Daten verwenden wir ausschließlich für den Versand der angeforderten Informationen und geben sie nicht an Dritte weiter. Die erteilte Einwilligung zur Speicherung
der Daten, der E-Mail-Adresse sowie deren Nutzung zum Versand des Newsletters können Sie jederzeit widerrufen, etwa über den "Austragen"-Link im Newsletter.</p>
<h2>Google Analytics</h2>
<p>Diese Website nutzt Funktionen des Webanalysedienstes Google Analytics. Anbieter ist die Google Inc., 1600 Amphitheatre Parkway Mountain View, CA 94043, USA. Google Analytics verwendet so genannte "Cookies". Das sind Textdateien, die auf Ihrem
Computer gespeichert werden und die eine Analyse der Benutzung der Website durch Sie ermöglichen. Die durch den Cookie erzeugten Informationen über Ihre Benutzung dieser Website werden in der Regel an einen Server von Google in den USA übertragen
und dort gespeichert.</p>
<p>IP-Anonymisierung<br> Wir haben auf dieser Website die Funktion IP-Anonymisierung aktiviert. Dadurch wird Ihre IP-Adresse von Google innerhalb von Mitgliedstaaten der Europäischen Union oder in anderen Vertragsstaaten des Abkommens über den Europäischen
Wirtschaftsraum vor der Übermittlung in die USA gekürzt. Nur in Ausnahmefällen wird die volle IP-Adresse an einen Server von Google in den USA übertragen und dort gekürzt. Im Auftrag des Betreibers dieser Website wird Google diese Informationen
benutzen, um Ihre Nutzung der Website auszuwerten, um Reports über die Websiteaktivitäten zusammenzustellen und um weitere mit der Websitenutzung und der Internetnutzung verbundene Dienstleistungen gegenüber dem Websitebetreiber zu erbringen.
Die im Rahmen von Google Analytics von Ihrem Browser übermittelte IPAdresse wird nicht mit anderen Daten von Google zusammengeführt.</p>
<p>Browser Plugin<br> Sie können die Speicherung der Cookies durch eine entsprechende Einstellung Ihrer Browser-Software verhindern; wir weisen Sie jedoch darauf hin, dass Sie in diesem Fall gegebenenfalls nicht sämtliche Funktionen dieser Website
vollumfänglich werden nutzen können. Sie können darüber hinaus die Erfassung der durch den Cookie erzeugten und auf Ihre Nutzung der Website bezogenen Daten (inkl. Ihrer IP-Adresse) an Google sowie die Verarbeitung dieser Daten durch Google
verhindern, indem Sie das unter dem folgenden Link verfügbare Browser-Plugin herunterladen und installieren: https://tools.google.com/dlpage/gaoptout?hl=de
</p>
<p>Widerspruch gegen Datenerfassung<br> Sie können die Erfassung Ihrer Daten durch Google Analytics verhindern, indem Sie auf folgenden Link klicken. Es wird ein Opt-Out-Cookie gesetzt, der die Erfassung Ihrer Daten bei zukünftigen Besuchen dieser
Website verhindert: Google Analytics deaktivieren Mehr Informationen zum Umgang mit Nutzerdaten bei Google Analytics finden Sie in der Datenschutzerklärung von Google: https://support.google.com/analytics/answer/6004245?hl=de</p>
<p>Auftragsverarbeitung<br> Sofern wir mit Google einen Vertrag zur Auftragsdatenverarbeitung abgeschlossen haben, setzen wir die strengen Vorgaben der deutschen Datenschutzbehörden bei der Nutzung von Google Analytics vollständig um.</p>
<p>Demografische Merkmale bei Google Analytics<br> Diese Website nutzt die Funktion “demografische Merkmale” von Google Analytics. Dadurch können Berichte erstellt werden, die Aussagen zu Alter, Geschlecht und Interessen der Seitenbesucher enthalten.
Diese Daten stammen aus interessenbezogener Werbung von Google sowie aus Besucherdaten von Drittanbietern. Diese Daten können keiner bestimmten Person zugeordnet werden. Sie können diese Funktion jederzeit über die Anzeigeneinstellungen in Ihrem
Google-Konto deaktivieren oder die Erfassung Ihrer Daten durch Google Analytics wie im Punkt “Widerspruch gegen Datenerfassung” dargestellt generell untersagen.</p>
<h2>Facebook-Plugins</h2>
<p>Auf unseren Seiten sind Plugins des sozialen Netzwerks Facebook, Anbieter Facebook Inc., 1 Hacker Way, Menlo Park, California 94025, USA, integriert. Die Facebook-Plugins erkennen Sie an dem Facebook-Logo oder dem "Like-Button" ("Gefällt mir")
auf unserer Seite. Eine Übersicht über die Facebook-Plugins finden Sie hier: https://developers.facebook.com/docs/plugins/. Wenn Sie unsere Seiten besuchen, wird über das Plugin eine direkte Verbindung zwischen Ihrem Browser und dem Facebook-Server
hergestellt. Facebook erhält dadurch die Information, dass Sie mit Ihrer IP-Adresse unsere Seite besucht haben. Wenn Sie den Facebook "Like-Button" anklicken während Sie in Ihrem Facebook-Account eingeloggt sind, können Sie die Inhalte unserer
Seiten auf Ihrem Facebook-Profil verlinken. Dadurch kann Facebook den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten keine Kenntnis vom Inhalt der übermittelten Daten sowie deren Nutzung
durch Facebook erhalten. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Facebook unter https://de-de.facebook.com/policy.php. Wenn Sie nicht wünschen, dass Facebook den Besuch unserer Seiten Ihrem Facebook-Nutzerkonto
zuordnen kann, loggen Sie sich bitte aus Ihrem Facebook-Benutzerkonto aus.</p>
<h2>Instagram</h2>
<p>Auf unseren Seiten sind Funktionen des Dienstes Instagram eingebunden. Diese Funktionen werden angeboten durch die Instagram Inc., 1601 Willow Road, Menlo Park, CA, 94025, USA integriert. Wenn Sie in Ihrem Instagram-Account eingeloggt sind können
Sie durch Anklicken des Instagram-Buttons die Inhalte unserer Seiten mit Ihrem Instagram-Profil verlinken. Dadurch kann Instagram den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten
keine Kenntnis vom Inhalt der u?bermittelten Daten sowie deren Nutzung durch Instagram erhalten. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Instagram: https://instagram.com/about/legal/privacy/
</p>
<h2>Kommentarfunktion auf dieser Website</h2>
<p>Für die Kommentarfunktion auf dieser Seite werden neben Ihrem Kommentar auch Angaben zum Zeitpunkt der Erstellung des Kommentars, wenn Sie nicht anonym posten, Ihre E-Mail-Adresse und ggf. der von Ihnen gewählte Nutzername gespeichert. Unsere
Kommentarfunktion speichert die IP-Adressen der Nutzer, die Kommentare verfassen. Da wir Kommentare auf unserer Seite nicht vor der Freischaltung prüfen, benötigen wir diese Daten, um im Falle von Rechtsverletzungen wie Beleidigungen oder Propaganda
gegen den Verfasser vorgehen zu können.</p>
<h2>SSL-Verschlüsselung</h2>
<p>Diese Seite nutzt aus Gründen der Sicherheit und zum Schutz der Übertragung vertraulicher Inhalte, wie zum Beispiel der Anfragen, die Sie an uns als Seitenbetreiber senden, eine SSL-Verschlüsselung. Eine verschlüsselte Verbindung erkennen Sie
daran, dass die Adresszeile des Browsers von "http://" auf "https://" wechselt und an dem Schloss-Symbol in Ihrer Browserzeile. Wenn die SSL Verschlüsselung aktiviert ist, können die Daten, die Sie an uns übermitteln, nicht von Dritten mitgelesen
werden.
</p>
<h2>Recht auf Auskunft, Löschung, Sperrung</h2>
<p>Sie haben jederzeit das Recht auf unentgeltliche Auskunft über Ihre gespeicherten personenbezogenen Daten, deren Herkunft und Empfänger und den Zweck der Datenverarbeitung sowie ein Recht auf Berichtigung, Sperrung oder Löschung dieser Daten.
Hierzu sowie zu weiteren Fragen zum Thema personenbezogene Daten können Sie sich jederzeit unter der im Impressum angegebenen Adresse an uns wenden.</p>
<h2>Unser Widerspruch für Werbe-Mails</h2>
<p>Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit widersprochen. Die Betreiber der Seiten behalten sich ausdrücklich
rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-E-Mails, vor.</p>
</div>
</div>
</div>
</div>
Just use overflow:auto on parent div. Here's a fiddle
HTML
<div class="parent">
<div class="child">
//long content
</div>
</div>
CSS
.parent{
width:50%;
margin:0 auto;
padding:20px;
height:100vh;
background:#2f2f2f;
overflow:auto;
}
.child{
color:#fff;
}
I hope it helps.