A web framework is a software framework that is designed to support the development of dynamic websites, web applications and web services. The framework aims to alleviate the overhead associated with common activities performed in web development.
Basically, a web framework makes it easier for you to develop your website or web application. Most sites have a common set of functionality (like handling sessions, data validation, etc) and a framework is something that prevents you from re-writing the code for these functionalities, each time you create a website. 
Some examples of Web framework:
- Ruby on Rails/Rails
Rails is a comprehensive framework that provides everything you need to create impressive web applications on both the front-end and back-end. It includes tools for rendering HTML templates, interacting with databases (through ORMs), sending and receiving emails, maintaining live pages with WebSockets, queuing jobs for asynchronous tasks, storing uploaded files in the cloud, and implementing robust security measures against common attacks.
Django is a Python web framework that simplifies the development process and promotes a clean, efficient design. It is developed by experienced programmers and handles much of the complex aspects of web development, allowing you to concentrate on building your application. Django is available for free and is open source.
- Angular JS