CSS Overflow

by Austin Crane

HTML

<body>
<div class="banner">
<nav class="main-navigation main-nav-pos " role="navigation">
	 <li class="learn">
     	<a class="learn" href="http://liveatmonarch.com/bw/cullowhee/learn" >
        <span class="nav-spacer">Learn</span>
        <div class="nav-info">
        	hello, long sentence that goes out of the div for some reason?
        </div><!-- nav info -->
        <div class="butterfly"></div><!-- butterfly -->
        </a>
     </li>
     <li class="live">
    	 <a class="live"  href="http://liveatmonarch.com/bw/cullowhee/live" >
         <span class="nav-spacer">Live</span>
         <div class="nav-info">
        	hello again
        </div><!-- nav info -->
        <div class="butterfly"></div><!-- butterfly -->
         </a>
     </li>
     <li class="parents">
     	<a class="parents"  href="http://liveatmonarch.com/bw/cullowhee/for-parents" >
        <span class="nav-spacer">For Parents</span>
        <div class="nav-info">
        	hello
        </div><!-- nav info -->
        <div class="butterfly"></div><!-- butterfly -->
        </a>
     </li>
    
     <div class="nav-bottom"></div>
</nav><!-- #site-navigation -->
    </div><!-- banner -->
 

<div id="page"></div>
                                
                                    <br>
    <br>
        <br>
            <br>
                <br>
                    <br>
                        <br>
                            <br>
                                <br>
                                    <br>
    <br>
        <br>
            <br>
                <br>
                    <br>
                        <br>
                            <br>
                                <br><br>
    <br>
        <br>
            <br>
                <br>
                    <br>
                        <br>
                            <br>
                                <br>
                                    <br>
    <br>
        <br>
            <br>
                <br>
                   ...

CSS

body {background-color: #000;}
.banner {
	height: 300px;
	overflow: hidden;	
	/*z-index: 800;*/
	position: relative;
}
.main-nav-pos  {
		position: absolute;
		bottom: 15px;
		height: 100px;
	}
	.main-nav-fixed  {
		position: fixed;
		top: 0px;
		height: 50px;
	}
	.main-nav-pos a {
		padding: 25px 0 25px 0%;
	}
	.main-nav-fixed a {
		padding: 15px 0 15px 0%;
	}
	.main-navigation  {
		display: inline-block !important;
		text-align: left;
		width: 100%;
		z-index: 1000;
	}
	.main-navigation a {
		display: inline-block;
		text-decoration: none;
		font-family: 'Nunito', sans-serif;
		font-size: 14px;
		color: #fff;
		text-transform: uppercase;
		white-space: nowrap;
		border-radius: 10px;
		font-weight:300;
		z-index: 1000;
		position: relative;
		-webkit-box-shadow: 2px 0px 12px 2px rgba(0,0,0,0.75);
		-moz-box-shadow: 2px 0px 12px 2px rgba(0,0,0,0.75);
		box-shadow: 2px 0px 12px 2px rgba(0,0,0,0.75);
	}
	.main-navigation li.learn,
	.main-navigation li.live,
	.main-navigation li.parents {
		margin: 0 1% 0 0;
		width: 24%;
		display: inline-block;
	}
	.main-navigation li.ask {
		margin: 0 0 0 0;
		width: 24%;
		display: inline-block;
		float: right;
	}
	.main-navigation a.learn ,
	.main-navigation a.live,
	.main-navigation a.parents,
	.main-navigation a.ask
	{
		width: 100%;
		height: 100%;
		position: relative;
	}
	.main-navigation a.learn {
		background-color: rgba(255,0,255, 0.85);
	}
	.main-navigation a.live {
		background-color: rgba(0,0,255, 0.85);
	}
	.main-navigation a.parents {
		background-color: rgba(127,0,255, 0.85);
	}
	.main-navigation a.ask {
		background-color: rgba(252,0,75, 0.85);
		margin: 0 0 0 0;
	}
	.nav-spacer {
		padding: 0 0 0 10px;	
	}
	.main-navigation a:hover {
		color: #eee;
	}
.nav-info, .nav-info-fixed {
	width: 100%;
	position: absolute;
	top: 0%;
	background-color: #fff;
	border-radius: 10px;
	z-index: 1000;
	height:100%; 
	overflow: hidden;
    word-wrap: break-word;
	margin: 0 0 10px 0;
	background-color:...

JavaScript

// Sticky nav
// ________________________________________

$(window).on('scroll', function () {
	 	 
		 var scrollTop     = $(window).scrollTop(),
		 $main=$('.main-navigation'),
		 $navbot=$('.nav-bottom'),
		 $navinfo=$('.main-navigation li a').children('.nav-info'),
		 $navinfofixed=$('.main-navigation li a').children('.nav-info-fixed'),
        elementOffset = $('#page').offset().top,
        fromtop      = (elementOffset - scrollTop);
		
		if ( fromtop <= 30 ) {
			// Your div has reached the top
			$main.removeClass('main-nav-pos').addClass('main-nav-fixed');
			$navinfo.removeClass('nav-info').addClass('nav-info-fixed');
			$navbot.css({"display":"none"});
		} else {
			$main.removeClass('main-nav-fixed').addClass('main-nav-pos');
			$navinfofixed.removeClass('nav-info-fixed').addClass('nav-info');
			$navbot.css({"display":"block"});
		}
		
});

//  Nav hover popups 
// ________________________________________

$('.main-navigation li a').hover(
    function() {
        if ( $('.main-navigation').hasClass('main-nav-pos') ) {
            //display heading and caption
            $(this).children('.nav-info').animate({"height":"100%"}, 100);
            $(this).children('.nav-info').animate({"top":"-105%"}, 'fast');
            $(this).children('.butterfly').css({"display":"block"}, 'slow');
        }
        else
        {
            //display heading and caption
            $(this).children('.nav-info-fixed').animate({"height":"100%"}, 100);
            $(this).children('.nav-info-fixed').animate({"top":"105%"}, 'fast');
        }
    },
    function() {
        if ( $('.main-navigation').hasClass('main-nav-pos') ) {
            //hide heading and caption
            $(this).children('.nav-info').animate({"height":"100%"}, 100);
            $(this).children('.nav-info').animate({"top":"0%"}, 'fast');
            $(this).children('.butterfly').css({"display":"none"}, 'slow');
        }
        else 
        {
            //hide heading and caption
        ...