I would like to align these buttons in the same line. It looks like it is aligning itself according to the text, but I would like the buttons to be aligned according to the bottom of the card, so it would be independent of the length of the text. Thank you for any help. I have included the code snippet as well.
My outcome
Desired outcome
.container3 {
padding-top: 50px;
display: flex;
justify-content: center;
}
.box {
background-color: white;
opacity: 0.9;
width: 300px;
height:500px;
margin:20px;
box-sizing: border-box;
border-radius: 10px;
transition: transform 0.5s;
box-shadow: 2px 2px 20px grey;
cursor: pointer;
}
.box-image.img1 {
height:200px;
background-image: url(images/pamatky.jpg);
background-size:cover;
box-sizing: border-box;
border-radius: 10px;
margin: 10px;
}
.box-image.img2 {
height:200px;
background-image: url(images/pyramidy.jpg);
background-size:cover;
box-sizing: border-box;
border-radius: 10px;
margin: 10px;
}
.box-image.img3 {
height:200px;
background-image: url(images/chufe.jpg);
background-size:cover;
box-sizing: border-box;
border-radius: 10px;
margin: 10px;
}
.box-image.img4 {
height:200px;
background-image: url(images/rache.jpg);
background-size:cover;
box-sizing: border-box;
border-radius: 10px;
margin: 10px;
}
.box:hover {
transform: scale(1.1);
}
p.box-text {
color: black;
padding: 10px;
text-align: justify;
font-weight: 500;
}
h2 {
text-align: center;
font-weight: 900;
}
.button a {
background-color: white;
color: black;
font-size: 15px;
padding: 15px 20px;
display: block;
text-align:center;
margin: 0px 100px;
text-decoration: none;
cursor: pointer;
box-sizing: border-box;
border-radius: 10px;
box-shadow: 2px 2px 5px grey;
bottom: 2px;
}
<div id="container2">
<section class="container3">
<div class="box">
<div class="box-image img1"></div>
<h2>Památky</h2>
<p class="box-text">Egypt je země na památky velice bohatá. Pojedeme-li po Nilu od egyptských hranic na sever, můžeme se neustále nechávat okouzlovat novými a novými chrámy, sfingami, pyramidami … . Naše stránky se teprve rozjíždějí. Proto jsme zatím vybrali pouze nejnavštěvovanější památky. Samozřejmě budeme jejich počet průběžně rozšiřovat. Zatím jsou rozděleny do tří oblastí - okolí Káhiry (Gíza, Sakkara a Memfis), okolí Luxoru (starověké Théby neboli Veset) a jižní hranice Egypta (Asuán, Abú Simbel …). S rozšiřováním stránek budeme samozřejmě rozšiřovat i počet oblastí.</p>
<div class="button">VÍCE</div>
</div>
<div class="box">
<div class="box-image img2"></div>
<h2>Pyramidy</h2>
<p class="box-text">Tři velké jehlany se sfingou v popředí jsou snad nejčastěji používaným symbolem Egypta.Udivující je, že vznikly již v raném počátku egyptské civilizace a státnost, za vlády 4. dynastie. Tyto tři velké pyramidy v Gíze jsou sice nejznámější, avšak v žádném případě jediné. Po celém Egyptě je rozeseto množství méně známých, ale ne méně cenných pyramid. Že tyto monumentální stavby byly postaveny proto, aby chránily věčný spánek faraónů, ví dnes každé malé dítě. Již pět tisíciletí zaměstnávají mysl architektů, matematiků, archeologů, stavitelů, ale i vyznavačů méně exaktních směrů.</p>
<div class="button">VÍCE</div>
</div>
<div class="box">
<div class="box-image img3"></div>
<h2>Chufevova pyramida</h2>
<p class="box-text">Je známá pod jménem vládce, který ji nechal postavit, faraóna Chufeva, řecky Cheopse. Je to největší dodnes stojící pyramida a na dlouhá tisíciletí největší dílo lidských rukou vůbec. Do roku 1880 byla nejvyšší stavbou na světě, pak ji překonaly věže dómu v Kolíně nad Rýnem a v roce 1889 Eiffelova věž. Se čtvercovou základnou o straně 230 metrů a původní výškou 146 m si naše představivost asi těžko poradí. Fotbalovým fanouškům přiblížíme lépe její velikost, když řekneme, že na její základnu by se vešlo deset fotbalových hřišť.</p>
<div class="button">VÍCE</div>
</div>
<div class="box">
<div class="box-image img4"></div>
<h2>Rachefova pyramida</h2>
<p class="box-text">Známe ji též pod názvem Chefrenova pyramida. Po vzoru svého otce Chufeva si nechává stavět svoji hrobku i faraón Rachef. Tato pyramida, která je o deset metrů nižší, než byla původní výška Chufevovy pyramidy a o metr nižší než je dnes, působí daleko vyšším dojmem, protože je postavená na místě výše postaveném. Obě jsou však téměř stejně veliké. Rozdíl deseti metrů výšky a dvaceti metrů v jedné straně základny (Rachefova má základnu 210 x 210 m) už na výsledném monumentálním dojmu nic nebere.</p>
<div class="button">VÍCE</div>
</div>
</div>
</div>
</div>
You can try this :
.box {
position : relative;
}
.button {
position: absolute;
bottom: 10px;
left: 0;
right: 0;
margin-left: auto;
margin-right: auto;
}
The idea is to make all the .box elements as flexbox containers with column direction and the last child elements (the .button container) should have margin-top: auto.
You could also improve the accessibility and maintainability of the content by placing the images as regular images elements (and not as backgrounds, since they convey information) using the object-fit property (as you can see I used 4 different images, but they cover the space keeping their aspect ratio.)
.container3 {
padding-top: 50px;
display: flex;
gap : 20px;
justify-content: center;
}
.container3 * {
box-sizing: border-box;
}
.box {
background-color: white;
opacity : 0.9;
width : 300px;
border-radius : 10px;
transition : transform 0.5s;
box-shadow : 2px 2px 20px grey;
cursor : pointer;
display : flex;
flex-direction: column;
}
.box figure {
display: block;
height: 200px;
margin: 10px;
padding: 0;
border-radius: inherit;
overflow: hidden;
}
.box img {
height: 100%;
width: 100%;
object-fit: cover;
object-position: center center;
}
.box:hover {
transform: scale(1.1);
}
p.box-text {
color: black;
padding: 10px;
text-align: justify;
font-weight: 500;
}
h2 {
text-align: center;
font-weight: 900;
}
.button {
margin-top: auto;
margin-bottom: 30px;
}
.button a {
background-color: white;
color: black;
font-size: 15px;
padding: 15px 20px;
display: block;
text-align:center;
margin: 0px 100px;
text-decoration: none;
cursor: pointer;
box-sizing: border-box;
border-radius: 10px;
box-shadow: 2px 2px 5px grey;
bottom: 2px;
}
<section class="container3">
<div class="box">
<figure><img src="http://via.placeholder.com/1000x200" /></figure>
<h2>Památky</h2>
<p class="box-text">Egypt je země na památky velice bohatá. Pojedeme-li po Nilu od egyptských hranic na sever, můžeme se neustále nechávat okouzlovat novými a novými chrámy, sfingami, pyramidami … . Naše stránky se teprve rozjíždějí. Proto jsme zatím vybrali pouze nejnavštěvovanější památky. Samozřejmě budeme jejich počet průběžně rozšiřovat. Zatím jsou rozděleny do tří oblastí - okolí Káhiry (Gíza, Sakkara a Memfis), okolí Luxoru (starověké Théby neboli Veset) a jižní hranice Egypta (Asuán, Abú Simbel …). S rozšiřováním stránek budeme samozřejmě rozšiřovat i počet oblastí.</p>
<div class="button">VÍCE</div>
</div>
<div class="box">
<figure><img src="http://via.placeholder.com/500x400" /></figure>
<h2>Pyramidy</h2>
<p class="box-text">Tři velké jehlany se sfingou v popředí jsou snad nejčastěji používaným symbolem Egypta.Udivující je, že vznikly již v raném počátku egyptské civilizace a státnost, za vlády 4. dynastie. Tyto tři velké pyramidy v Gíze jsou sice nejznámější, avšak v žádném případě jediné. Po celém Egyptě je rozeseto množství méně známých, ale ne méně cenných pyramid. Že tyto monumentální stavby byly postaveny proto, aby chránily věčný spánek faraónů, ví dnes každé malé dítě. Již pět tisíciletí zaměstnávají mysl architektů, matematiků, archeologů, stavitelů, ale i vyznavačů méně exaktních směrů.</p>
<div class="button">VÍCE</div>
</div>
<div class="box">
<figure><img src="http://via.placeholder.com/400x300" /></figure>
<h2>Chufevova pyramida</h2>
<p class="box-text">Je známá pod jménem vládce, který ji nechal postavit, faraóna Chufeva, řecky Cheopse. Je to největší dodnes stojící pyramida a na dlouhá tisíciletí největší dílo lidských rukou vůbec. Do roku 1880 byla nejvyšší stavbou na světě, pak ji překonaly věže dómu v Kolíně nad Rýnem a v roce 1889 Eiffelova věž. Se čtvercovou základnou o straně 230 metrů a původní výškou 146 m si naše představivost asi těžko poradí. Fotbalovým fanouškům přiblížíme lépe její velikost, když řekneme, že na její základnu by se vešlo deset fotbalových hřišť.</p>
<div class="button">VÍCE</div>
</div>
<div class="box">
<figure><img src="http://via.placeholder.com/500x300" /></figure>
<h2>Rachefova pyramida</h2>
<p class="box-text">Známe ji též pod názvem Chefrenova pyramida. Po vzoru svého otce Chufeva si nechává stavět svoji hrobku i faraón Rachef. Tato pyramida, která je o deset metrů nižší, než byla původní výška Chufevovy pyramidy a o metr nižší než je dnes, působí daleko vyšším dojmem, protože je postavená na místě výše postaveném. Obě jsou však téměř stejně veliké. Rozdíl deseti metrů výšky a dvaceti metrů v jedné straně základny (Rachefova má základnu 210 x 210 m) už na výsledném monumentálním dojmu nic nebere.</p>
<div class="button">VÍCE</div>
</div>
</section>
They react this way because they're dependent from the text's length. You can place the buttons in your .box with position: absolute.
Put them in a .container, give width: 100% to the .container, then text-align: center (so the button will remain centered) and the coordinates with position: absolute. Give left: 0 (so the .container remains centered) and the distance from the bottom you want. Obviously give position: relative to your .box and everything should works properly.
Related
This question already has answers here:
Flexbox: center horizontally and vertically
(14 answers)
Closed 6 months ago.
I can't manage to get my text to vertical align to the center of a div. I tried so simplify the problem as much as I could but it still doesn't work.
I tried with display:table but I need flexbox so that my columns are the right width and it didn't work either anyway. Removing elements one by one didn't bring me to the answer...
Edit: there is no span so it's not a problem of the last element being inline.
.row {
display: flex;
align-items: center;
margin-left: 44px;
margin-right: 44px;
margin-top: 10px;
}
.column_left {
flex: 28%;
}
.column_right {
flex: 72%;
}
.group_title {
color: #000000;
font-family: "Noto Serif";
font-size: 18px;
font-weight: bold;
letter-spacing: 0;
}
.group_description {
width: 408px;
color: #000000;
font-family: "Noto Serif";
font-size: 15px;
letter-spacing: 0;
}
.exercise_list {
height: 70px;
background: #FFEFD5;
}
<div class="exercise_list">
<div class="row">
<div class="column_left group_title">Les présentations</div>
<div class="column_right group_description">Le Féminin & le masculin - Les verbes « être » et « avoir »<br />Les Pays & les nationnalités - La famille. Les métiers</div>
</div>
</div>
<div class="exercise_list">
<div class="row">
<div class="column_left group_title">Poser des questions pour faire connaissance</div>
<div class="column_right group_description">La structure des questions ouvertes et fermées<br />Les activités quotidiennes</div>
</div>
</div>
Edit:
Removing the parent div to give both classes row and exercise_list to the child almost work, but I lose the margin to the left and the text is too close to the edge of the rectangle.
Take a look in the code:
.row {
display: flex;
align-items: space-arround;
width:100%;
}
.column_left {
padding-left:44px;
flex:1;
}
.column_right {
flex:2;
}
.group_title {
color: #000000;
font-family: "Noto Serif";
font-size: 18px;
font-weight: bold;
letter-spacing: 0;
}
.group_description {
width: 408px;
color: #000000;
font-family: "Noto Serif";
font-size: 15px;
letter-spacing: 0;
}
.exercise_list {
height: 70px;
background: #FFEFD5;
width:100%;
display:flex;
align-items:center;
}
<div class="exercise_list">
<div class="row">
<div class="column_left group_title">Les présentations</div>
<div class="column_right group_description">Le Féminin & le masculin - Les verbes « être » et « avoir »<br />Les Pays & les nationnalités - La famille. Les métiers</div>
</div>
</div>
<div class="exercise_list">
<div class="row">
<div class="column_left group_title">Poser des questions pour faire connaissance</div>
<div class="column_right group_description">La structure des questions ouvertes et fermées<br />Les activités quotidiennes</div>
</div>
</div>
add display:flex; to your .exercise_list elements
Try adding display: flex to .exercise_list. It should be the containing element that dictates child element alignment.
The margin on .row is confusing the spacing too so I would remove margin-top: 10px from .row and add that to .exercise_list.
I have 4 divs with image as background and I want them all to have a dark overlay, but the absolute position is somehow messing things up because all 4 overlays end up over the first div when I want each to include all 4 divs.
Thanks in advance!
You should set the .overlay as a child of the .factorImg div and make .factorImg have position: relative, otherwise the .overlay will be set absolute to .row.
You could also look into pseudo-classe (:before and :after):
https://www.w3schools.com/css/css_pseudo_classes.asp
Put <div class="overlay1"></div> tag inside factorImg1 div and give it to position:relative. Do same thing in all respective div.
Put your overlay divs inside bootstrap columns which will have display: relative by default. Check below snippet for reference.
.overlay1,
.overlay2,
.overlay3,
.overlay4 {
width: 14.7%;
height: 270px;
background-color: #000000;
opacity: 0.5;
position: absolute;
left: 0;
top: 0;
bottom: 0;
}
.factorImgText {
position: absolute;
z-index: 1;
padding: 0 5px;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
margin: 0;
text-align: center;
width: 90%;
}
.factorSection h6,
.factorSection p {
color: #fff;
font-weight: 900;
}
.factorSection h6 {
font-size: 1em;
text-align: center;
width: 90%;
}
.factorSection p {
font-size: .75em;
line-height: 1.4em;
margin-bottom: 0;
}
.factorImg1,
.factorImg2,
.factorImg3,
.factorImg4 {
background: rgba(0, 0, 0, 0.6);
opacity: 1;
height: auto;
padding-top: 8%;
padding-bottom: 8%;
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
height: 270px;
width: 23.8%;
position: relative;
}
.factorImg1 {
background-image: url('http://kleingartenverein-aligse.de//images/wallpaper/Oct/fall-1072821_1920.jpg');
margin-right: 10px;
}
.factorImg2 {
background-image: url('http://kleingartenverein-aligse.de//images/wallpaper/Oct/fall-1072821_1920.jpg');
margin-right: 10px;
}
.factorImg3 {
background-image: url("http://kleingartenverein-aligse.de//images/wallpaper/Oct/fall-1072821_1920.jpg");
margin-right: 10px;
}
.factorImg4 {
background-image: url("http://kleingartenverein-aligse.de//images/wallpaper/Oct/fall-1072821_1920.jpg");
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<div class="background_section2">
<div id="section2-05" class="container">
<div class="row">
<div class="col-lg-12 col-sm-12">
<h2>¿QUÉ ES EL FACTOR ZURPRAIS?</h2>
<p>¡Mucho más que el factor sorpresa!</p>
</div>
</div>
<div class="row factorSection">
<div class="col-sm-3 col-xs-12 factorImg1">
<div class="factorImgText">
<h6>2 DÍAS ANTES… ¡ZURPRAIS!</h6>
<p>Con tu pack de experiencias, tu edad y tu perfil (familias, parejas, amig#s…), organizaremos tu plan… Y como es Zurprais, 2 días antes sabrás lo que es.</p>
</div>
<div class="overlay1"></div>
</div>
<div class="col-sm-3 col-xs-12 factorImg2">
<div class="factorImgText">
<h6>PLANES CON UN PLUS</h6>
<p>Un atardecer en velero… ¿con cava y ostras? Un brunch… ¿entre viñedos? Todas tus experiencias tendrán un toque extra que las hará aún más especiales.</p>
</div>
<div class="overlay2"></div>
</div>
<div class="col-sm-3 col-xs-12 factorImg3">
<div class="factorImgText">
<h6>EMOCIÓN DESDE LA RESERVA</h6>
<p>Al reservar, empieza el juego. Recibirás algunas pistas sobre las actividades que te podrían tocar. Para que vayas calentando motores.</p>
</div>
<div class="overlay3"></div>
</div>
<div class="col-sm-3 col-xs-12 factorImg4">
<div class="factorImgText">
<h6>CAMBIO GRATUITO</h6>
<p>¡Segurísimo que tu plan te va a encantar! Pero para que estés tranquil#: si no te gusta lo que te hemos organizado, te preparamos uno diferente para otro día.</p>
</div>
<div class="overlay4"></div>
</div>
</div>
</div>
</div>
How to fix background-color that covers previous line of text (see: http://jsfiddle.net/3uzbV/41/).
div {
font-family: Charis, serif;
font-size: 1.5em;
line-height: 0.8em;
text-align: justify;
}
span {
background-color: red;
}
<div> firstString <span> secoundString </span> thirdString </div>
Nest the text inside another element inside that red span (here i've used a b). That get's us close but there's still an issue with the red bg obscuring the white bg text above it. To resolve that I've used mix-blend-mode (which is not currently supported in IE)
div {
font-family: Charis, serif;
font-size: 1.5em;
line-height: 0.8em;
text-align: justify;
}
span {
background-color: red;
display: inline;
position: relative;
mix-blend-mode: multiply;
}
span b {
display: inline;
position: relative;
font-weight: normal;
}
<div>... ze cztery. Tymczasem na swym dworze. Nikt go przez okienic szpar i kłopotach, i stanęli kołem. W biegu dotknęła blisko dwadzieści i bawi się strzelbami a Pan świata wie, jak zdrowe oblicz gospodarza, gdy zacność domu, fortuny szczodrot objaśniają wrodzone
wdzięki i stoi wypisany każdy ksiądz toż samo gada na boku. Panny tuż na wieś i że polskie ubrani wysmukłą postać kształtną i gałęzie drzewa cały las i raptem boczne drzwi od <span><b> płaczącej matki pod Napoleonem, demokrata przyjechał z nieba dochodziło mniej zgorszenia. Ach, ja wam służyć, moje panny Róży a oni tak się i, czyje były, odgadywał. Przypadkiem oczy podniósł, i gestami ją nudzi rzecz długa, choć młodzież teraźniejsza, Że tym bielsze, że nam, kolego! lecz w ziemstwie, potem się czerwieni.</b></span> Twarzy wówczas nie korzystał dworze jak naoczne świadki. I Wojski z Warszaw mam list, to mówiąc, że.</div>
http://jsfiddle.net/3g9nvh2a/
I found this great article: http://krasimirtsonev.com/blog/article/CSS-The-background-color-and-overlapping-rows-inline-element
Add display: inline; to the div tag, and position: relative; to the span tag.
You will get this:
div {
font-family: Charis, serif;
font-size: 1.5em;
line-height: 0.8em;
text-align: justify;
display: inline;
}
span {
background-color: red;
position: relative;
}
See Fiddle http://jsfiddle.net/3uzbV/42/
It is fairly simple, just use:
display: inline-block;
In your css for span and it will be done
Add the following property to the span with a red background:
display: inline-block;
For example:
div {
font-family: Charis, serif;
font-size: 1.5em;
line-height: 0.8em;
text-align: justify;
}
span {
background-color: red;
display: inline-block;
}
<div>Litwo! Ojczyzno moja! Ty jesteś jak zdrowie. Ile cię stracił. Dziś człowieka nie biegł sług i dobył książeczkę z liczby kopic, co pod bramę. We dworze jak pieniądze Żydzi. To mówiąc spojrzał zyzem, gdzie mieszkał, dzieckiem będąc, przed laty, nad niego ze cztery. Tymczasem na swym dworze. Nikt go przez okienic szpar i kłopotach, i stanęli kołem. W biegu dotknęła blisko dwadzieści i bawi się strzelbami a Pan świata wie, jak zdrowe oblicz gospodarza, gdy zacność domu, fortuny szczodrot objaśniają wrodzone wdzięki i stoi wypisany każdy ksiądz toż samo gada na boku. Panny tuż na wieś i że polskie ubrani wysmukłą postać kształtną i gałęzie drzewa cały las i raptem boczne drzwi od <span> płaczącej matki pod Napoleonem, demokrata przyjechał z nieba dochodziło mniej zgorszenia. Ach, ja wam służyć, moje panny Róży a oni tak się i, czyje były, odgadywał. Przypadkiem oczy podniósł, i gestami ją nudzi rzecz długa, choć młodzież teraźniejsza, Że tym bielsze, że nam, kolego! lecz w ziemstwie, potem się czerwieni.</span> Twarzy wówczas nie korzystał dworze jak naoczne świadki. I Wojski z Warszaw mam list, to mówiąc, że.</div>
I'm trying to mix "traditional" float usage for floating text around element with some adataptiveness for different resolutions. Fiddle: http://jsfiddle.net/jDTBs/5/
<article>
<header>
<div class="cover">...image...</div>
<h1>title</h1>
</header>
<div class="row">
<div class="text">some long text</div>
<section class="related">related content</section>
</div>
</article>
Responsiveness here comes in flavour of moving related content below the text. Currently .related cannot move higher than end of .text, because .text is in normal flow. I tried to use relative positioning on float, but I don't know the height to offset it, so -100% does not work.
Common approach is to use float on .text, but it interferes with text floating around .cover. I also tried moving related content above text, but then in smaller window it comes before text, which is undesirable. Also, any kind of interference with overflow or display properties in .text make text block jump away from floating .cover.
The closest I could get to is to use position: absolute on .related with right:0px;top:0px. This gives the positioning I want, but produces a CSS-unsolvable problem: related content will go below end of article.
So I'm stuck. Is there any way to mix the two approaches? Highest CSS support and any changes to layout are acceptable. Bootstrap CSS is also available, but does not help a tiny bit.
Thsi is something I'd like to achieve:
Here's an example of how the HTML and CSS could be changed to yield a beautifully responsive layout. I've added more paragraphs to the HTML so that it's easy to see that the amount of text does not affect the image position. Perhaps the biggest caveat here is that figcaption is rendered really strangely in relation to figure (I'm guessing that has something to do with the standard's definition of the default stylesheet for those elements), so unless this possibly changes in the future, you'll need to specify enough margin underneath the figure to encompass the caption.
http://jsfiddle.net/jjordanca/jDTBs/10/
HTML:
<article>
<figure class="cover">
<img src="" alt="" />
<time datetime="2013-08">Aug 2013</time>
</figure>
<header>
<h1>Wo bewirtung zerfasert so kraftiger handwerke ri la kindliche</h1>
</header>
<div class="row">
<figure class="related">
<img src="" alt="" />
<figcaption>Empor hosen ich nur funfe szene seine. Wo ri so stuckchen kammertur pa bekummert schranken hemdarmel.</figcaption>
</figure>
<div class="text">
<p>Was mehrere fur niemals wie zum einfand wachter. Wu gewohnt langsam zu nustern dankbar. Messer all erzahl las zopfen darauf. Oden sie denn froh ohne dus. Schlafer hin ansprach geworden gelernte lauschte zugvogel mir das. Ist hochmut gebogen wendete das zweimal. Hoffnungen augenblick vertreiben es da wo zueinander kindlichen. Weg uns sohn hoch bei flu eins.</p>
<p>Ei ku jawohl en mi fertig hangen konnen gesagt. Dazwischen nachmittag ein eigentlich ist sog tat. Was dazwischen launischen das vorsichtig verrichtet eigentlich wie ein. Wahres gerber gro ehe tal kannst. Naturlich in da nachgehen schwachem gegriffen ja. Gearbeitet bugeleisen birkendose neidgefuhl die das dienstmagd.</p>
<p>Was mehrere fur niemals wie zum einfand wachter. Wu gewohnt langsam zu nustern dankbar. Messer all erzahl las zopfen darauf. Oden sie denn froh ohne dus. Schlafer hin ansprach geworden gelernte lauschte zugvogel mir das. Ist hochmut gebogen wendete das zweimal. Hoffnungen augenblick vertreiben es da wo zueinander kindlichen. Weg uns sohn hoch bei flu eins.</p>
<p>Ei ku jawohl en mi fertig hangen konnen gesagt. Dazwischen nachmittag ein eigentlich ist sog tat. Was dazwischen launischen das vorsichtig verrichtet eigentlich wie ein. Wahres gerber gro ehe tal kannst. Naturlich in da nachgehen schwachem gegriffen ja. Gearbeitet bugeleisen birkendose neidgefuhl die das dienstmagd.</p>
</div>
</div>
</article>
CSS:
* {padding: 0; margin: 0;}
article {
position: relative;
}
img {
border: 1px solid black;
}
.cover {
width: 80px;
text-align: center;
font-size: 0.8em;
display: inline-block;
float: left;
margin: 0 20px 10px 0;
}
time {
display: inline-block;
width: 80px;
text-align: center;
}
header {
margin: 20px 0 0 0;
}
h1 {
position: relative;
padding-left: 10px;
font-size: 1.6em;
}
.cover img {
width: 80px;
height: 120px;
}
.row {
display: inline;
position: relative;
}
.text {
display: inline;
position: relative;
font-size: smaller;
}
.related {
display: inline-block;
width: 200px;
font-size: 0.8em;
height: 100px;
float: right;
margin: 25px 0 50px 20px;
}
.figcaption {
display: inline-block;
float: right;
}
.related img {
width: 200px;
height: 100px;
}
* {
border: 1px dotted #ccc
}
<article>
<header>
<div class="cover">...image...</div>
<h1>title</h1>
</header>
<div style="clear:both"></div>
<div class="row">
<div style="float:left" class="text">some long text</div>
<section class="related">related content</section>
</div>
<div style="clear:both"></div>
</article>
Here you go:
http://jsfiddle.net/jjordanca/jDTBs/8/
Keep in mind that this will look okay on Chrome, but not in Firefox since the img elements will require display: block; in the CSS. Some minor other adjustments may need to be made.
HTML:
<article>
<header>
<div class="cover">
<img src="" alt="" />
<time datetime="2013-08">Aug 2013</time>
</div>
<h1>Wo bewirtung zerfasert so kraftiger handwerke ri la kindliche</h1>
</header>
<div class="row">
<div class="text">
<p>Was mehrere fur niemals wie zum einfand wachter. Wu gewohnt langsam zu nustern dankbar. Messer all erzahl las zopfen darauf. Oden sie denn froh ohne dus. Schlafer hin ansprach geworden gelernte lauschte zugvogel mir das. Ist hochmut gebogen wendete das zweimal. Hoffnungen augenblick vertreiben es da wo zueinander kindlichen. Weg uns sohn hoch bei flu eins.</p>
<p>Ei ku jawohl en mi fertig hangen konnen gesagt. Dazwischen nachmittag ein eigentlich ist sog tat. Was dazwischen launischen das vorsichtig verrichtet eigentlich wie ein. Wahres gerber gro ehe tal kannst. Naturlich in da nachgehen schwachem gegriffen ja. Gearbeitet bugeleisen birkendose neidgefuhl die das dienstmagd.</p>
</div>
<section class="related">
<figure>
<img src="" alt="" />
<figcaption>Empor hosen ich nur funfe szene seine. Wo ri so stuckchen kammertur pa bekummert schranken hemdarmel.</figcaption>
</figure>
</section>
</div>
</article>
CSS:
article {
position: relative;
max-width: 480px;
}
figure {
margin: 0em
}
img {
border: 1px solid
}
.cover {
width: 80px;
text-align: center;
font-size: 0.8em;
}
.cover {
display: inline-block;
margin: 0em 2em 1em 0em;
}
time {
display: inline-block;
width: 80px;
text-align: center;
}
header {
display: inline-block;
width: 100px;
float: left;
}
h1 {
position: relative;
width: 550px;
margin-top: -180px;
top: 50px;
margin-left: 90px;
padding-left: 10px;
font-size: 1.6em;
}
.cover img {
width: 80px;
height: 120px;
}
.row {
display: inline;
position: relative;
top: 110px;
}
.text {
display: inline;
position: relative;
font-size: smaller;
}
.related {
width: 200px;
font-size: 0.8em;
height: 100px;
float: right;
position: relative;
left: 220px;
top: -200px;
}
.related img {
width: 200px;
height: 100px;
}
* {
border: 1px dotted #ccc
}
The problem with the way the HTML is structured is that this design is extremely limited in its responsiveness. If you are able to change the HTML, the page can be made truly responsive.
I have problem with floating in IE6. The HTML code:
<div id="stran">
<img src="../Slike/prejsnja.png" alt="Prejšnja" onclick="prejsnja();" onmouseover="this.style.cursor='pointer';" id="prejsnja" />
STRAN <?php dobiStran(); ?>
<img src="../Slike/naslednja.png" alt="Naslednja" onclick="naslednja();" onmouseover="this.style.cursor='pointer';" id="naslednja" />
</div>
CSS:
#prejsnja {
float: left;
}
#naslednja {
float: right;
}
#stran {
position: relative;
width: 400px;
border: 2px black solid;
margin: 0 auto;
font-family: "Comic Sans MS"; /*Izberemo drugo pisavo, kot pa tista ki je definirana v body.*/
color: #599cd4;
text-align: center; /*Postavimo na center.*/
font-size: 30px; /*Vecja pisava, ker gre za naslov.*/
}
The left image floats to the left, as it should, the text is centered, the right image also floats to the right as it should, but has for some reason some kind of margin-top, that only appears in IE6. Here is example in other browsers:
And in IE6:
Try moving your HTML elements around a bit, like this:
<div id="stran">
<img src="../Slike/prejsnja.png" alt="Prejšnja" onclick="prejsnja();" onmouseover="this.style.cursor='pointer';" id="prejsnja" />
<img src="../Slike/naslednja.png" alt="Naslednja" onclick="naslednja();" onmouseover="this.style.cursor='pointer';" id="naslednja" />
STRAN <?php dobiStran(); ?>
</div>
And then your styles become:
#prejsnja {
float: left;
width: 100px;
}
#naslednja {
float: right;
width: 100px;
}
#stran {
position: relative;
width: auto;
border: 2px black solid;
margin: 0 auto;
font-family: "Comic Sans MS"; /*Izberemo drugo pisavo, kot pa tista ki je definirana v body.*/
color: #599cd4;
text-align: center; /*Postavimo na center.*/
font-size: 30px; /*Vecja pisava, ker gre za naslov.*/
}
I've assumed your arrow images are 100px, but just change these to whatever it is they actually are.