Imagine header-ului pe toata latimea browser-ului
-
Buna! Folosesc tema Twenty Twelve si as vrea ca imaginea de background a header-ului sa cuprinda toata latimea browser-ului.
Desi solutia evidenta ar fi sa adaug la style.css (child theme):
body .site {
max-width: 100%;
}.site-header {
width: 100%
}img.header-image {
width: 100%;
}nu o pot adopta deoarece vreau ca .site-header { sa isi pastreze un width de 980px.
Imi poate oferii cineva o solutie va rog?
-
Poti sa ne dai un link cu site-ul tau sa vedem css-ul?
Din pacate nu am site-ul gazduit pe un server. Lucrez la el instalat local pe propriul calculator
Teoretic vorbind cel mai simplu ar fi sa adaugi un fundal direct din css pe body. Nu vad de ce ar trebui sa te legi de alte elemente. (sa ai grija sa pui fundalul si pe html si pe body. Firefox face probleme daca il pui numai pe body)
Singurele modificari ce le-am facut in tema originala Twenty Twelve sunt in child theme: header.php si style.css care arata asa:
header.php
<body <?php body_class(); ?>> <div id="page" class="hfeed site"> <header id="masthead" class="site-header" role="banner"> <hgroup> <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1> <h2 class="site-description"><?php bloginfo( 'description' ); ?></h2> </hgroup> <?php $header_image = get_header_image(); if ( ! empty( $header_image ) ) : ?> <a href="<?php echo esc_url( home_url( '/' ) ); ?>"><img src="<?php echo esc_url( $header_image ); ?>" class="header-image" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="" /></a> <?php endif; ?> <nav id="site-navigation" class="main-navigation" role="navigation"> <h3 class="menu-toggle"><?php _e( 'Menu', 'twentytwelve' ); ?></h3> <a class="assistive-text" href="#content" title="<?php esc_attr_e( 'Skip to content', 'twentytwelve' ); ?>"><?php _e( 'Skip to content', 'twentytwelve' ); ?></a> <?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?> </nav><!-- #site-navigation --> </header><!-- #masthead --> <div id="main" class="wrapper">style.css
body .site { max-width: 100% !important; } #page { padding-left: 0 !important; padding-right: 0 !important; margin-bottom: 0 !important; margin-top: 0 !important; } .wrapper { margin-left: auto !important; margin-right: auto !important; width: 980px !important; } .site-header { padding: 0 !important; height: 137px !important; width: 980px !important; margin: auto !important; } img.header-image { width: 100% !important; height: 137px !important; border-radius: 0 !important; box-shadow: none !important; margin-top: 0 !important; } .main-navigation ul.nav-menu, .main-navigation div.nav-menu > ul { border-bottom: none !important; border-top: none !important; width: 980px !important; position: relative !important; top: -75px !important; }vola. sunt un incepator acum 😉 ai ptea te rog sa pui pe scurt niste instructiuni pentru a face modificarea sugerata de tine?
ok, dar de ce nu pui imaginea de fundal direct in css ca background? Asta nu inteleg.
.body { background: url(images/website-bg.jpg) top center #ffffff; }Deoarece as vrea sa pun o imegine de genul si la footer. Ce vreau eu sa obtin e un site cu un header si footer asemeni < http://www.code.org/ >
As putea obtine asta punand doua imagini diferite pe background, sus si jos? Daca da, imi dai te rog detaliul de css? Multumesc mult pentru ajutorul acordat pana acum!
of course. CSS suporta multiple background. Cred ca IE6 e singurul care nu citeste.
body, html { background-image: url(images/website-bg-top.jpg), url(images/website-bg-footer.jpg), url(images/website-bg-rep.jpg); background-position:top center, bottom center, top; background-repeat:no-repeat, no-repeat, repeat; }Mai sus un css cu 3 backgrounduri. Vezi ca nivelele se suprapun primul fiind cel mai de sus. Daca folosesti numai in header si footer, atunci nu vor fi probleme de suprapunere. Cum ziceam si mai sus nu uita sa pui backgroundul si pe html ca sa nu ai probleme cu firefox.
sa pun background-ul si pe html insemnand doar sa adaug dupa body, html { ?
da, pai poti atribui un still css pe mai multe elemente sau selectori cu virgula. Spre exemplu daca vreau sa folosesc o culoare pe mai multe divuri vin cu
#div1, #div2, #div3{ color: #ff0000; }Ce ar trebui sa verifici in css-ul tau este ca backgroundul pt html sa nu fie definit si in alta parte. Dar daca lucrezi cu childtheme teoretic ar trebui sa rescrie orice regula css atribuita in css-ul temei parinte.
Oh.. Multumesc foarte mult voala pentru solutile oferite! Sper sa fie de folos si altor membrii 🙂
Cu placere. Daca totul e bine, te rog sa marchezi postul ca „Rezolvat”
Subiectul „Imagine header-ului pe toata latimea browser-ului” este închis pentru răspunsuri noi.