Check out example codes for "css creative buttons". It will help you in understanding the concepts better.

Code Example 1

/* ADD FONT WITH SHADOW AND INCLUDE A LINEAR GRADIENT TO MAKE THE BUTTON
* MORE ATTRACTIVE IN WORDPRESS */
/* CONTACT US FORM HOME PAGE */
.button {
	color: #fff;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
	border-radius: 5px;
	font-family: "Montserrat";
	font-weight: 500;
	padding-top: 1%;
	padding-bottom: 1%;
	background-color: #a28f9d;	
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(255, 255, 255, 0.6)), color-stop(0.49, rgba(255, 255, 255, 0.3)), color-stop(0.51, rgba(255, 255, 255, 0.0)), to(rgba(255, 255, 255, 0.2))); /* Chrome,Safari4+ */
    background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.0) 51%, rgba(255, 255, 255, 0.2) 100%); /* Chrome10+,Safari5.1+ */
    background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.0) 51%, rgba(255, 255, 255, 0.2) 100%); /* FF3.6+ */
    background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.0) 51%, rgba(255, 255, 255, 0.2) 100%); /* Opera11.10+ */
    background-image: linear-gradient(top, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.0) 51%, rgba(255, 255, 255, 0.2) 100%); /* W3C */	
}

.button:hover {
	background-color: #84a98c;	
}

Learn ReactJs, React Native from akashmittal.com