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

pierwsza strona: HTML + CSS oddziaływanie divów na siebie, problem z napisem

Object Storage Arubacloud
0 głosów
442 wizyt
pytanie zadane 17 grudnia 2016 w HTML i CSS przez niezalogowany
zmienione kategorie 17 grudnia 2016

witam mam pewne pytanie otóż, tworze swoja pierwsza strone i poki co uzywam tylko html i css (jeden skrypt w jq)
natknalem sie na pewien problem

otóż tak wyglada moje menu strony: http://screenshot.sh/oBFEWLbrPBhy6
w jaki sposób mogę dokonać tego aby poszczególne opcje wyśrodkowały się mimo tego przycisku " logowanie / rejestracja" który jest po prawej strony? 

usuwajac go wszystko jest w porządku, natomiast z nim już nie

 

Problem nr2:
kiedy najeżdżam na napis " logowanie / rejestracja " napis przesuwa sie w prawo
oczywiscie namierzylem problem, jest nim linijka     border-left: 1px dashed #660e0e;
jednakże mimo tego nie mam pojecia jak upoać sie z problemem...
 

kod strony:

html:
 

<!DOCTYPE HTML>
<html lang="pl">
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
	<!--<link href="css/bootstrap.css" rel="stylesheet">-->	
	<link rel="stylesheet" type="text/css" href="css/style.css">	
	
	
    <title>TYTUŁ STRONY</title>

<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>

</head>

<body>


		<div id="logo" id="text_all_shadow">
		LOGO
		<p>POD TEKST</p>
		</div>
		
		<nav class="text_all_shadow">
			<ol class="">
				<li><a href="#">OPCJA1</a></li>
				<li><a href="#">OPCJA1</a></li>
				<li><a href="#">OPCJA1</a></li>
				<li><a href="#">OPCJA1</a></li>
				<li><a href="#">OPCJA1</a></li>
				<li><a href="#">OPCJA1</a></li>
			</ol>		


		<div id="login" class="float_right">
			<div id="login_button" class="text_all_shadow">Logowanie <p>Rejestracja</p></div>
			<div id="login_form">
				<form>			
					<input type="text" placeholder="Login">
					<input type="password"  placeholder="Hasło">
					 <!--<input type="submit" class="float_right">-->		
				
				</form>
			</div>
		</div>
		</nav>
		

		
		
	<div id="wrapper"> <!--TRZYMA CALA STRONE poza menu i logo-->
		
		<div class="video_frame">
			<div class="video_title"></div>
			<div class="video_video">
			
			</div>
		</div>
		
	</div>
			 <script src="scripts/script.js"></script>
</body>

</html>

css:
 

 /* STYLES RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}


body {
	background: url('../img/bg.png'); /* Background pattern from subtlepatterns.com */
}

#logo
{
	font-size: 50px;	
	color: lightgray;	
	text-align: center;
	padding-top: 15px;
	
	background-color: #1e2934;
	background-image: url('../img/az-subtle.png');
	
}

#logo p
{
	
	font-size: 20px;
		padding: 15px;
	border-top: 1px dashed rgba(87, 96, 106, 0.2);
}

nav {
	width: 100%;
	background-color: #921d1d;
	background-image: url('../img/az-subtle.png');
	text-align: center;
	}

nav > ol
{
	list-style-type: none;
	line-height: 200%;
	display: inline-block;
}
nav > ol > li
{
	float: left;
}
nav > ol > li:first-child{
	border-left: 1px dashed #660e0e;
}


nav > ol > li > a{
	text-decoration: none;
	color: #c0c4c8;
	font-size: 20px;
	padding: 7px 7px;		
	
	display: block;
	border-right: 1px dashed #660e0e;
}


#login{}

#login_button
{
	font-size: 18px;	
	color: lightgray;
	
	text-align: center;
	
	padding: 1px 20px;
	position: relative;
	

	width: 200px;
}

#login_button:hover, #login_button_clicked
{
	background-color: #ab2525;
	background-image: url('../img/az-subtle.png');
	border-left: 1px dashed #660e0e;
}

.login_button_active
{
	background-color: #ab2525;
	background-image: url('../img/az-subtle.png');
	border-left: 1px dashed #660e0e;
}

#login_form
{
	background-color: #ab2525;
	background-image: url('../img/az-subtle.png');
	width: 200px;
	height: 210px;

	padding: 15px 20px;
		
	border-bottom-left-radius: 130px;
	border-bottom: 1px dashed #660e0e;
	border-left: 1px dashed #660e0e;
}

#login_form input[type=text], #login_form input[type=password]
{
	width: 190px;
	height: 30px;	
	background-image: url('../img/bg.png');	
	padding: 5px;
	
	border: 1px solid #180B0B;
}

#login_form input[type=password]
{
	margin-top: 15px;
}

#login_form input[type=submit]
{
	width: 140px;
	height: 30px;
	
	position: relative;
}

.text_all_shadow
{
	text-shadow: 0px -1px 2px #333333,
	0px 1px 2px #333333,
	1px 1px 2px #333333,
	1px 0px 2px #333333;
}

.float_right
{
	float: right;
}

.float_left
{
	float: left;
}

.clear_both
{
	clear: both;
}

.hidden
{
	display: none;
}


.show
{
	display: block;
}



 

2 odpowiedzi

0 głosów
odpowiedź 17 grudnia 2016 przez hoktaur Pasjonat (22,250 p.)

odp. 1

Możesz użyć css position relative i absolute. Wadą tego rozwiązania jest że jak ekran zrobi się wąski to pole logowanie najdzie na menu. Ale jak na pierwszą stronę nie potrzebujesz responsywności (możesz to wyeliminować że przy małych ekranach menu zostaje skompresowane do ikonki).

odp2.

po najechaniu zmienia się tło oraz dodajesz lewe obramowanie ono też zajmuje 1px i dlatego się to całe przesuwa w prawo. Może ustawić lewe obramowanie na stałe jak masz lub w kolorze tła wtedy nic się nie bedzie przesuwało

        <nav class="text_all_shadow" style="position: relative; border 1px solid blue">
            <ol class="">
                <li><a href="#">OPCJA1</a></li>
                <li><a href="#">OPCJA1</a></li>
                <li><a href="#">OPCJA1</a></li>
                <li><a href="#">OPCJA1</a></li>
                <li><a href="#">OPCJA1</a></li>
                <li><a href="#">OPCJA1</a></li>
            </ol>     
 
 
			<div id="login" class="" style="position: absolute; right: 0px; top: 0px; ">
				<div id="login_button" class="text_all_shadow" style="border-left: 1px dashed #660e0e;">Logowanie <p>Rejestracja</p></div>
				<div id="login_form">
					<form>            
						<input type="text" placeholder="Login">
						<input type="password"  placeholder="Hasło">
						 <!--<input type="submit" class="float_right">-->      
					 
					</form>
				</div>
			</div>
        </nav>

 

komentarz 17 grudnia 2016 przez niezalogowany
1. wczesniej uzywalem tego sposob jednakze nie chce go
2. ciekawe rozwiazanie, nie wpadłem na nie, dziekuje bardzo :)

czekam na dalsze propozycje
komentarz 17 grudnia 2016 przez pablop76 VIP (123,180 p.)
Witam. Co do problemu nr: 2 to tak jak hoktaur z tym że  transparent zamiast koloru tła a jeżeli chodzi o pierwsze to Formularz wyjąłbym z nawigacji i wstawił jako position: fixed; i wypozycjonowałbym za pomocą top oraz right.

i jszcze jedno. Po co używasz position: relative; ?
komentarz 17 grudnia 2016 przez niezalogowany
ale cala nawigacja ma byc fixed i sticky za pomocą jq

bo jak uzyje absolute zamiast relative to mi sie strona rozlatuje na mniejszych rozdziałkach
komentarz 17 grudnia 2016 przez pablop76 VIP (123,180 p.)
Ale wogóle position nie jest potrzebne.

Daj dla nav position: relative; a dla login position: absolute; top: 0; right: 0;
komentarz 17 grudnia 2016 przez hoktaur Pasjonat (22,250 p.)
edycja 17 grudnia 2016 przez hoktaur

Co do problemu nr: 2 to tak jak hoktaur z tym że  transparent 

bardzo dobry pomysł :)

i jszcze jedno. Po co używasz position: relative; ?

Żeby position: absolute było liczone od nav nie od body - bo potem jak dasz od body i np. zmienisz logo o innym rozmiarze to musisz na nowo ustawić top i right...

 

komentarz 17 grudnia 2016 przez hoktaur Pasjonat (22,250 p.)

Ale wogóle position nie jest potrzebne.

Daj dla nav position: relative; a dla login position: absolute; top: 0; right: 0;

Coś ci chyba nie 'pykło'  to co, position nie jest potrzebne a potem daj ...?

komentarz 17 grudnia 2016 przez hoktaur Pasjonat (22,250 p.)

ale cala nawigacja ma byc fixed i sticky za pomocą jq

bo jak uzyje absolute zamiast relative to mi sie strona rozlatuje na mniejszych rozdziałkach

Ale nie przeszkadza zmienić relative na fixed w tagu nav. Ten pierwszy position jest tylko po to (jak wpisałem wcześniej) żeby login (z absolute) liczony było od nav nie od body

komentarz 17 grudnia 2016 przez hoktaur Pasjonat (22,250 p.)

czekam na dalsze propozycje

Ja bym to zrobił coś na wzór tego ale to musisz wtedy się poduczyć Bootstrapa

http://www.w3schools.com/bootstrap/bootstrap_affix.asp

http://getbootstrap.com/javascript/#affix

komentarz 17 grudnia 2016 przez pablop76 VIP (123,180 p.)
relative jest w login_button i login_form i to jest nie potrzebne a dałbym dla nav po to żeby wypozycjonować względem nav  pojemnik #login
komentarz 17 grudnia 2016 przez pablop76 VIP (123,180 p.)
Ale nav nie ma position: relative ?
komentarz 17 grudnia 2016 przez pablop76 VIP (123,180 p.)
Sorki za bałagan ale dodaje komentarz do konkretnego komentarza a on pojawia się jako ostatni :(
komentarz 17 grudnia 2016 przez hoktaur Pasjonat (22,250 p.)
można cytować ... rozwiąże twój problem z zapisem na końcu
0 głosów
odpowiedź 17 grudnia 2016 przez niezalogowany

dokonałem kilku zmian w css oraz wyrzucilem login z nav
o to kod css:
 

http://wklej.org/hash/bec5635d5fb/

jeżeli ktoś może to prosiłbym o komentarz oraz ocene tego rozwiązania, efekt póki co mnie zadowala

Podobne pytania

+1 głos
3 odpowiedzi 650 wizyt
pytanie zadane 7 lutego 2018 w HTML i CSS przez PolYGlok Pasjonat (19,450 p.)
0 głosów
3 odpowiedzi 551 wizyt
pytanie zadane 28 stycznia 2018 w HTML i CSS przez goldzik Nowicjusz (200 p.)
0 głosów
3 odpowiedzi 638 wizyt
pytanie zadane 25 stycznia 2018 w Nasze projekty przez Zayebisty Gaduła (3,200 p.)

92,615 zapytań

141,465 odpowiedzi

319,778 komentarzy

61,997 pasjonatów

Motyw:

Akcja Pajacyk

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

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

Akademia Sekuraka

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

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

Akademia Sekuraka

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

...