For center or positioning the background image you should use background-position property .
The background-position property sets the starting position of a background image from top and left sides of the element .
The CSS Syntax is background-position : xvalue yvalue; .
"xvalue" and "yvalue" supported values are length units like px and percentage and direction names like left, right and etc .
The "xvalue" is the horizontal position of the background and starts from top of the element . It means if you use 50px it will be "50px" away from top of the elements . And "yvalue" is the vertical position that has the same condition .
So if you use background-position: center; your background image will be centered .
But I always use this code :
.yourclass {
background: url(image.png) no-repeat center /cover;
}
I know it is so confusing but it means :
.yourclass {
background-image: url(image.png);
background-position: center;
background-size: cover;
background-repeat: no-repeat;
}
And I know that too the background-size is a new property and in the compressed code what is /cover but these codes means fill background sizing and positioning in windows desktop background .
You can see more details about background-position in here and background-size in here .