Wednesday, January 13, 2010

Change SharePoint Search Icon with Just CSS

I created a post awhile ago on how to change the SharePoint site logo via CSS so that you don’t have to modify the titlegraphic.gif file on the file server or change it via the UI for every site to make a global change.

I have a simple solution that changes the search GO icon from the standard image to something more custom image with just CSS.

The icon is not specified via the master page so you will not be able to change it there.

<asp:ContentPlaceHolder id="PlaceHolderSearchArea" runat="server">
        <SharePoint:DelegateControl runat="server" ControlId="SmallSearchInputBox" />
</asp:ContentPlaceHolder>

You might be tempted take the route of changing the following files on the server and replacing them with your own custom ones. But I have an alternative that works just as well and you don’t have to mess with any of these base Image files.

  1. GOSEARCH.GIF
  2. ICONGO01.GIF
  3. ICONGO02.GIF
  4. ICONGO03.GIF

Upload your custom images to a sub folder within the following directory: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\IMAGES\YourCustomFolder

Then in your custom CSS simply place the following CSS:

td.ms-sbgo{
background-color:transparent;
padding-left:3px;
padding-right:3px;
padding-bottom:0px;
padding-top:0px;
border:solid 0px #949494;
}
td.ms-sbgo a{
padding: 0px 0px 0px 0px !important;
margin: 0px 0px 0px 0px !important;
}

td.ms-sbgo a{
background-image: url(/_layouts/images/yourcustomfolder/custom_search.gif);
background-repeat: no-repeat;
background-position: top left;
}
td.ms-sbgo a img{
    visibility: hidden;
    height: 17px;
    width: 17px;
}

You will simply just have to change the folder name, image name, and the height and width of the image to be specific to you and you should be good to go. The result should look something like this:

image

Happy Customizing!

10 comments:

Anonymous said...

Nice trick, thanks! I did a quick test and the image did not render in Firefox, its just a blank space. Does this work for you in Firefox?

Divyadarshan said...

Hi,
Thank you.
In my case I get the image I want and then on top of it the get the default image.

Tried z-index, but no go.

Please help

Erik Swenson said...

Divyadarshan, Are you doing this for SharePoint 2007 or 2010?

Umesh Shebe said...

Thanks for solution, its perfectly working on SharePoint2010

Steve.O said...

I just wrote up my normal process for styling/skinning the SharePoint 2010 (MOSS) Search Box. It might be of some use to anyone reading this article looking for a walkthrough. Skin and Style the SharePoint 2010 (MOSS) Search Control - Labs.steveottenad.com. Thanks for the writeup!

Anonymous said...

For firefox add a line in
td.ms-sbgo a {

display:block;
}

Anonymous said...

Hi,
How to change the search button default text "Search the site" to some other test like "Search".
Please help me.

UK Plumbers said...

It's taken me a while to figure out how to remove the search icon as my custom one would just lay underneath. Thank you so much for the CSS. Looks perfect now.

Anonymous said...

this is perfectly working in sp 2010!
thanks!

Max said...

Thanks a lot - saved me a lot of time and is still standard!

Cheers
Max